<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Replies below.  I hope nobody is annoyed that the new guy is
    emailing so much :-)<br>
    <br>
    <div class="moz-cite-prefix">On 11/28/2012 09:50 AM, Colomban
      Wendling wrote:<br>
    </div>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">Le 28/11/2012 16:37, Steven Blatnick a écrit :
</pre>
      <blockquote type="cite">
        <pre wrap="">Lex,

Actually I tried Alt-Up on the file browser and it didn't work for me. 
I just tried entering that shortcut into compiz, and it doesn't appear
to be using that shortcut for something else.  (Linux Mint 11 64-bit,
gnome 2, using geany from yesterday's git).

I guess this is the right place to make suggestions and/or see if
development is being already done toward something?
</pre>
      </blockquote>
      <pre wrap="">
Yes, development questions and discussions happen here, that's the
correct place :)

</pre>
      <blockquote type="cite">
        <pre wrap="">I hope nobody minds, since I'm the new guy...
</pre>
      </blockquote>
      <pre wrap="">
Welcome!

</pre>
      <blockquote type="cite">
        <pre wrap="">Also, sorry if any of this is repeat
from some bug tracker, existing feature I missed, planned feature, or
otherwise since I don't know the workflow nor features as well.

Here are a few ideas for features and/or plugins (Disclaimer: I come
from gedit, so hope nobody minds I refer to it so much):
</pre>
      </blockquote>
      <pre wrap="">
That's not a problem, but I hope you don't mind if we don't all know
what it the GEdit feature you might refer to ;)</pre>
    </blockquote>
    Understandable :-)<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap=""> 1. Allow keyboard shortcuts to be changed from the menus.  Gnome2 at
    least has the option of allowing gtk apps to set their custom
    shortcuts by hitting the desired keys while the menu entry is
    highlighted.  This would make changing the shortcut as simple as
    finding the functionality in the first place instead of finding it
    again in the shortcuts menu.  It would also allow you to quickly
    change a shortcut on certain things quickly (see #2 below)
</pre>
      </blockquote>
      <pre wrap="">
IIRC GTK guys plan to (or already have?) remove this feature from GTK3,
finding it old and useless.  So we'd have to re-implement if we want
GTK3 support.  Also, I must admit I never used it in any program, and I
can only think of Gimp as a program allowing this -- and even then, it
has an option for this (unchecked by default I think).

Moreover, it has one important issue IMO (at least in Gimp, but I guess
they use the GTK feature): it doesn't ask if trying to assign an already
existing binding, which means if one accidentally maps to an already
existing binding it gets silently overwritten.  And a dialog here would
be quite odd... I don't know.  Also, at least Gimp doesn't allow
changing the binding of an insensitive item (boring when I tried to
remap Undo/Redo for testing).</pre>
    </blockquote>
    That's the beauty of it :-) Just assign without prompting of
    conflicts on a program by program basis.  It's a shame they're
    removing that functionality in GTK3.  They seem to be making a lot
    of decisions (Gnome, maybe not GTK?) about what people want/don't
    want lately...  That was an awesome feature most people didn't use,
    partly because it was disabled by default on most distros :-(<br>
    <br>
    Maybe if it's just a flag it could be dependent on what it's
    building against?  Though I hate to support different features for
    different dependencies... If they end up keeping that feature, I
    hope we could use it.<br>
    <br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap=""> 2. External Tools plugin like gedit has that can have a quick-list on
    the toolbar (I've written a python plugin for gedit to put it on the
    toolbar, and I love being able to change the shortcuts quickly while
    selecting the tools I need for a particular project)
</pre>
      </blockquote>
      <pre wrap="">
Isn't this the same as Custom Commands?  (check out the docs if you
don't know about them)
</pre>
    </blockquote>
    I didn't know about that particular feature, but it is kinda
    similar.  It seems the various external calls could all be
    consolidated to one place, because as is they're everywhere.  All of
    this could be a plugin instead.<br>
    <br>
    What I mean is these all are similar:<br>
    <ol>
      <li>Custom Commands</li>
      <li>Context actions</li>
      <li>Build Commands (finite list too)</li>
    </ol>
    <p>Instead, I think it would be more intuitive to put them all
      together like GEdit's External Tools.  It's simpler and more
      powerful I think.  (Don't get me wrong, I wouldn't be trying geany
      out if I thought gedit were better in every way.  Geany has a lot
      of customization GEdit lacked.)  For those who haven't used GEdit
      much, let me point out some of the features, as well as ideas for
      improvement:</p>
    <ol>
      <li>When the command is run, all of the following are passed to it
        as shell variables:</li>
      <ol>
        <li>document path (actually as separate fields, so kinda
          overkill, I'd just do the first one below)<br>
        </li>
        <ol>
          <li>current document path (Example:
            $GEDIT_CURRENT_DOCUMENT_PATH=/home/steve/work/scratch.sh)</li>
          <li>current document name (Example:
            $GEDIT_CURRENT_DOCUMENT_NAME=scratch.sh)</li>
          <li>current document uri (Example:
            $GEDIT_CURRENT_DOCUMENT_URI=<a class="moz-txt-link-freetext" href="file:///home/steve/work/scratch.sh">file:///home/steve/work/scratch.sh</a>)</li>
          <li>current document directory: ($GEDIT_CURRENT_DOCUMENT_DIR=/home/steve/work)</li>
        </ol>
        <li>document scheme (Example:
          $GEDIT_CURRENT_DOCUMENT_SCHEME=file)</li>
        <li>document type (Example:
          $GEDIT_CURRENT_DOCUMENT_TYPE=application/x-shellscript)</li>
        <li>all open documents (just need the first one again, yes I
          have used this feature too)<br>
        </li>
        <ol>
          <li>path (Example:
            $GEDIT_DOCUMENTS_PATH=/home/steve/work/TODO.txt
            /home/steve/work/home/bin/stats/cron
            /home/steve/work/home/bin/stats/bin/process-stats-daily
            /home/steve/work/home/bin/stats/bin/process-stats-hourly
            /home/steve/work/scratch.sh)<br>
          </li>
          <li>uri (Example:
            $GEDIT_DOCUMENTS_URI=<a class="moz-txt-link-freetext" href="file:///home/steve/work/TODO.txt">file:///home/steve/work/TODO.txt</a>
            <a class="moz-txt-link-freetext" href="file:///home/steve/work/scratch.sh">file:///home/steve/work/scratch.sh</a>)</li>
        </ol>
        <li>selected text (Example: $GEDIT_SELECTED_TEXT=)</li>
        <li>current word position (Example: $GEDIT_CURRENT_WORD=2696)</li>
        <li>current line at cursor (Example: $GEDIT_CURRENT_LINE=echo
          Hello world;)</li>
        <li>current line number at cursor (Example:
          $GEDIT_CURRENT_LINE_NUMBER=3)</li>
      </ol>
      <li>Each command has the following configurable:</li>
      <ol>
        <li>Shortcut key</li>
        <li>Save the current document, all documents, or not to save</li>
        <li>Input (kinda unnecessary with the variables stored above)</li>
        <li>Output - where to put the output:</li>
        <ol>
          <li>replace highlighted text or at cursor</li>
          <li>replace current word or line</li>
          <li>display in the bottom panel<br>
          </li>
          <li>append to the current document</li>
          <li>replace the current document<br>
          </li>
          <li>Open a new document with the text</li>
        </ol>
        <li>What file types to allow/display the command on (languages,
          extensions)<br>
        </li>
        <li>What state of documents to allow/display the command on<br>
        </li>
        <ol>
          <li>local files</li>
          <li>remote files<br>
          </li>
          <li>all documents</li>
          <li>untitled documents</li>
          <li>all but untitled documents</li>
        </ol>
      </ol>
    </ol>
    <p>We could add some options to:<br>
    </p>
    <ol>
      <li>display in context</li>
      <li>display in menu</li>
    </ol>
    <p>Basically, you could set up all build commands, custom commands,
      and context actions to work from a single easy to understand UI. 
      The current build commands only seem to allow a finite set of
      build tools, and we don't send as much to the command as far as I
      can tell.  Personally, I think the more sent as environment
      variables the better.  Having this feature has allowed me to make
      quick plugin-like features.  It would be even more powerful if we
      could control geany from the command line by allowing an options
      for commands to use an existing window, such as going to a line or
      opening a file.<br>
    </p>
    <p>For example, I created a macro at a job where I could open
      corresponding files for any jsp/java/js file of the same name (a
      convention at that job).  So when I'd hit F12, if I had
      Example.java open and example.js, it would find and open
      example.jsp for me in the same window.  Or if only example.jsp is
      open, it would open the other two.<br>
    </p>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">
</pre>
      <blockquote type="cite">
        <pre wrap=""> 3. File Browser plugin allow creation of new file/folder, renaming of
    file (even one currently being edited, thereby changing the name on
    the editor too), and moving a file to trash.  Also, perhaps a
    feature to show/hide binary files.
</pre>
      </blockquote>
      <pre wrap="">
I think the geany-plugins' filebrowser plugin already have those
features.  Not sure why there are two distinct plugins though.</pre>
    </blockquote>
    I meant that we should add those features to the current file
    browser plugin.  I wasn't able to see those features in the context
    menu.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap=""> 4. Inline/embedded search (like gedit2's incremental search).  I guess
    the toolbar search works that way kinda...
</pre>
      </blockquote>
      <pre wrap="">
I don't quite know GEdit 2's behavior, but I think indeed the toolbar
search field does this.  Is there a problem with it?  I agree that some
fancy UI like Firefox's search could be cool, but I also think that if
the user wants more complex search options, she could very well use the
search dialog, and otherwise use the search field.  I don't think we
could reasonably put all our search dialog options inline.</pre>
    </blockquote>
    I think you're right.  I was only thinking for basic
    case-insensitive searching, or basically just moving the toolbar one
    inline on demand, but where it is is probably better/fine.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap=""> 5. Highlight all found instances of a string from the search (like
    gedit, would apply to string literals, not necessarily regex, from
    an inline search).
</pre>
      </blockquote>
      <pre wrap="">
My be interesting indeed (although I probably wouldn't use it myself).
Note that we already have "mark all" in the search dialog, and a plugin
to highlight a word upon double-click ("addons" I think).
</pre>
    </blockquote>
    I didn't know about the addon, so I'll have to check it out.<br>
    <br>
    The "mark all" puts a marker in the left margin, which I like to
    disable/hide that margin and even if we mark it there, we could
    still highlight the actual word itself for visibility.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">
</pre>
      <blockquote type="cite">
        <pre wrap=""> 6. Allow highlighting of all words in a document separate from search
    highlighting (like gedit's "Smart Hilighting" plugin).
</pre>
      </blockquote>
      <pre wrap="">
That's the "mark word" "addons" plugin feature I think :)

</pre>
      <blockquote type="cite">
        <pre wrap=""> 7. Fixed width tabs option on Preferences->Interface->Notebook
    tabs->Tab positions.  When I move my tabs on the editor to the left
    or right, I would prefer to be able to fix the width on them so
    longer file names don't extend the width.  I did this with a python
    plugin in gedit by allowing the width to be set with a spinner in
    preferences and then the plugin adjusts the tab's Label property
    "width-request" from -1 to the width desired.  (I've already started
    looking into the code to do this in geany, but maybe someone else
    already is working on this or maybe can do it faster because of
    familiarity)
</pre>
      </blockquote>
      <pre wrap="">
In core Geany it would probably go in notebook_new_tab() from
notebook.c.  However, a plugin could probably do it quite easily by
connecting to the signal for new tab created, and modify the label
packing or label size request.

</pre>
      <blockquote type="cite">
        <pre wrap=""> 8. Is there a way to disable/enable or view/hide the various bottom
    pane tools independently.  For example, if I never want to use
    Scratch, then a way to disable it from loading would be nice.
</pre>
      </blockquote>
      <pre wrap="">
In the "Various" prefs, the "msgwin_*_visible" settings.</pre>
    </blockquote>
    Thanks!  Exactly what I was looking for.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap=""> 9. Both the side panel and the bottom panel allow Ctrl+PgUp/PgDown to
    change tabs like the editor does (awesome!) but unlike the editor,
    they don't wrap around.  Also, the bottom panel, the terminal
    emulator interrupts the keyboard shortcut, not allowing it to browse
    off of it using that keyboard shortcut.
</pre>
      </blockquote>
      <pre wrap="">
I can't be sure right now for the normal Geany, but without
modifications in this direction my GTK3 branch does loop in all notebooks.

Also, the terminal doesn't eat the strokes either, but there is a
setting in the terminal prefs to choose whether it overrides Geany's
bindings or not.</pre>
    </blockquote>
    Ok, thanks.  I'll look for that.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">10. Allow a dynamic number of compile tools.  It appears now I can only
    have the number visible in the UI.  I realize the UI would have to
    be coded instead of in a glade file to do this.  Alternatively,
    "External Tools" like functionality would, in my opinion, be more
    versitile.  It allows any program to be called passing it the same
    things we pass plus any highlighted text, current line number,
    current line, etc.
</pre>
      </blockquote>
      <pre wrap="">
I can't really answer here (Lex probably could ;)), but I think that
only the UI prevents from a dynamic number of build commands.  E.g., I
think the code behind has the ability.

IIRC somebody already started a discussion on changing this UI, not sure
what was the outcome (but either we couldn't find a solution we found
good or nobody felt like doing the required changes).</pre>
    </blockquote>
    Anyone reading this know if someone is working on it?  Let me know
    if I can help :-)<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">11. Allow executing of highlighted SQL based on a current connection
    (among a configurable list).  (I did something like this for gedit 2
    and 3 and I use it all the time.)
</pre>
      </blockquote>
      <pre wrap="">
That'd be a candidate either for a custom command and an helper script,
or for a plugin :)</pre>
    </blockquote>
    I agree.  I'll probably write a similar plugin for geany.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">12. Add a toggle button to the toolbar for turning word wrapping on and off.
</pre>
      </blockquote>
      <pre wrap="">
Probably easy to do and harmless, since the toolbar is configurable.</pre>
    </blockquote>
    Ok, maybe I'll add this to a list of things I can look at to get my
    feet wet.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">13. Allow the status bar to change the file-type setting for setting
    syntax highlighting (gedit style).
</pre>
      </blockquote>
      <pre wrap="">
This would require a quite massive rewriting of the toolbar code since
currently it's simply a (user-modifiable) formatted string, e.g. it's
one single string, not several label/values (where the value could quite
easily be changed to a combo box or alike).  Though, I agree that the
idea is quite neat -- although I find the GEdit implementation terrible
from it having all items in one single menu, making searching for the
appropriate language really hard.</pre>
    </blockquote>
    I totally agree that GEdit did this terribly.  I have a unreleased
    plugin for gedit 3 I wrote that adds quick buttons to the status bar
    that can be checked in the plugins preferences.  That way you can
    have a few buttons on the bar to instantly change it. 
    Alternatively, if we did so in geany, it would probably be better to
    allow what ones show up in the list.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

If we chose to implement this, all configurable items shown in the
status bar could benefit from it (indent type, line ending type,
encoding and filetype).</pre>
    </blockquote>
    That would be awesome.  Good point.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">14. "Snap Open" dialog.  Quickly open files by typing the filename and
    filtering down based on a project's base directory (or otherwise
    configurable).  The dialog should be configurable to skip files for
    speed, such as a build directory, .svn/.git and hidden directories, etc.
</pre>
      </blockquote>
      <pre wrap="">
That'd probably be a great plugin :)  I think GProject (or maybe it's
GeanyPRJ?) has a similar feature.

Ah, and if you want this feature, maybe you'd be interested by the
Commander plugin ;) (it allows to browse the menus and open files using
a search entry).</pre>
    </blockquote>
    I agree, a plugin is probably a better place for that.  I don't want
    to bloat geany.  I love how light weight it is.<br>
    I'll have to look at the commander plugin.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">15. Sort alphabetically highlighted lines (see gedit plugin)
</pre>
      </blockquote>
      <pre wrap="">
That's a candidate for `sort` custom command ;)</pre>
    </blockquote>
    Good idea.  I didn't know about custom command before.<br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">

</pre>
      <blockquote type="cite">
        <pre wrap="">16. Compact menu option (Like firefox's Compact Menu 2 plugin.  I've
    done something similar in gedit.)
</pre>
      </blockquote>
      <pre wrap="">
I don't like this, but a plugin could probably hack around to achieve
this.  Ubuntu's Unity does a similar thing for displaying the app menu
in the desktop top bar.  Also, GTK3 has an (completely mis-though IMO,
but that's not the question :-') thing to achieve this.</pre>
    </blockquote>
    I agree, this is a plugin candidate.<br>
    <br>
    I still want it on the window.  I think moving menus to the top
    (like Unity) is a terrible idea.  If you feel like it, take a gander
    at my blog ranting on why the switch to gnome 3 (or Unity) from
    gnome 2 has left me in limbo and been a source of discomfort for
    me.  In fact, I mention in the post how I feel torn between
    supporting gedit 2 vs 3 vs pluma.  That's why I'm looking at geany
    :-)<br>
    <br>
<a class="moz-txt-link-freetext" href="http://steve8track.blogspot.com/2012/09/one-small-step-for-gnome-one-giant-leap.html">http://steve8track.blogspot.com/2012/09/one-small-step-for-gnome-one-giant-leap.html</a><br>
    <br>
    <blockquote cite="mid:50B640CF.10206@herbesfolles.org" type="cite">
      <pre wrap="">


Regards,
Colomban
_______________________________________________
Devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Devel@lists.geany.org">Devel@lists.geany.org</a>
<a class="moz-txt-link-freetext" href="https://lists.geany.org/cgi-bin/mailman/listinfo/devel">https://lists.geany.org/cgi-bin/mailman/listinfo/devel</a>
</pre>
    </blockquote>
    You guys have been great already :-)   I tried chatting with the
    MATE guys about pluma a while back, but I didn't get much response. 
    I'm glad this group seems friendlier.<br>
    <br>
    Thanks,<br>
    <br>
    Steve<br>
  </body>
</html>