What is the redo shortcut in Octave? - octave

What is the shortcut for "redo" in Octave? I tried Cntrl + Y but that didn't work, and I can't seem to find any documentation on this.

Octave uses Emacs key bindings by default. In Emacs you would first do Ctrl+G, after which Ctrl+_ (or Ctrl+Shift+-) would undo.
When using Emacs bindings in Matlab, redo is set to Ctrl+Shift+Z

Related

Is it possible to change the default comment string in Octave GUI?

In Octave GUI Editor the Ctrl+R shortcut comments the selected lines out with the Octave default string ##. But I share my code with other colleagues who use MATLAB. I was wondering if I could change the above keyboard shortcut and the Ctrl+Shift+R to use the MATLAB commenting character % by default? I'm aware of the Ctrl+Alt+R shortcut where one can choose the string, but that is not very handy given the muscle memory and the extra step.
P.S. I posted this question also here on the unofficial Octave Discord channel.
OK, I think I found the solution, and it was way easier than what I had anticipated. Basically, the Octave GUI team had already thought of that. Just go to Edit > Preference, and then in the Comments (Octave) section, select the % option:

GDB: How to add a key combination which runs a command?

I'm using GNU gdb (GDB) 7.10.1 with the -tui mode. I would like to add a key combination for the commands up and down. Something like Ctrl+u for up and Ctrl+d for down.
I've seen only comments about readline but not an example explaining how to integrate the combination in the gdb init file. Any idea?
I am not a TUI user, but my understanding is that the TUI has two modes.
In its initial (normal) mode, it uses readline like the ordinary gdb CLI. Readline provides a way to rebind keys via ~/.inputrc. The main thing you need to know here is that gdb is, sensibly enough, called "gdb" for readline's purposes. So a binding might look like:
$if gdb
"\C-u": "up\n"
$endif
The TUI also has a "single key" mode. As far as I know, this mode doesn't use readline and there is no way to rebind keys. However, in this mode, "u" and "d" are already bound the way you'd like.

Setting `sql-mysql-program` in emacs

There are at least three major overviews that come up when searching for information on using sql with emacs (due to my insufficient reputation I can't 'afford' to link to them here).
I can find no mention in any of them of the need to set the variable sql-mysql-program when working with mysql servers. Yet I could not get M-x sql-mysql to work without following the advice from this SO question to set this variable as follows:
(setq sql-mysql-program "/path/to/your/mysql")
In fact, the only tutorials/documentation I've seen highlighting this variable are in the above SO question and another SO question about "emacs-how-to-use-ssh-tunnel-to-connect-to-remote-mysql" (which again I can't link to because of insufficient reputation.)
An alternate solution seems to be suggested here How to work with emacs and mysql, which suggests changing the value of the emacs exec-path.
The question is, which of these options is preferable, or is it simply a matter of taste?
And what is the significance of the fact that none of the above-linked overviews of sql/emacs mentions the need to get emacs to recognize the binary? Is there something wrong with my emacs?
I spent a long time combing the sql.el source to try to understand what was going on and I do see a (defcustom sql-mysql-program "mysql"…)but in my case at least that did not seem to do the trick (perhaps because I'm starting emacs up with -q option?).
PS. In case it matters, my M-x emacs-version is GNU Emacs 24.5.1 (x86_64-apple-darwin12.5.0, NS apple-appkit-1187.40) of 2015-05-01, which I am running on an older Mac (10.8.5)
Note that this can be generalised to a question of:
What do I do if Emacs can't find an executable?
which is where the exec-path list comes into play.
As noted in C-hig (emacs) Shell RET, the exec-path list is initialised from the environment variable PATH when Emacs is started (see also (emacs) General Variables), so there are multiple ways to populate that list with the values you need.
Using an absolute path to sql-mysql-program is also fine, but potentially less portable. It's up to you, really.

Can't print ñ in an octave plot

I need to generate a graph (I'm using octave, to do so) that has an ñ character and I can't seem to be able to do that.
This is what I've tried
xlabel('A\~no','interpreter','tex')
However this prints the \ and the ~ just like in the parameter.
Any ideas?
Thank you very much
It seems that is not on the list of supported TeX characters as listed on the manual (see Table 15.1).
However, it's perfectly fine to use the ñ directly. The most simple solution xlabel ("Año") works fine on my system (Octave 3.8.0 with fltk as graphics toolkit).

Suggested initial Emacs config?

I would like to to try Emacs, and want to give it the best chance possible.
To do this, it seems like having a good .emacs file is important.
I primarily use Mac OS X (so I have looked at Aquamacs), and I mainly do Python programming, so anything specifically for that would be great.
I'd suggest starting with a blank .emacs file. Then go through the tutorials and related blog posts, and grow it as you learn. Using a .emacs file that's borrowed from someone else seems a little like missing the point.
That is a hard question. My theory about Emacs is that you have to give it a real honest try. That means working with it for a few months, not days. It is not for the faint of heart! Ideally emacs would become your one and only text editor, and you do things the emacs way.
Really, to give yourself and emacs the best chance possible, you should learn enough elisp to do your own basic customizations.
In fact, I think your .emacs is probably a read herring with regards to giving emacs the best possible chance. Instead, try out some of the groovier features like flymake with pylint, the inferior python process, python debugging with emacs are all worthwhile. In particular inferior processes are the bomb.
EmacsWiki has some good info on python and emacs.
The most important configuration change that I have found is not one for your .emacs, but for your OS. In the "Keyboard & Mouse" system preferences, in the "Keyboard" tab, click "Modifier Keys..." at the bottom and then change "Caps Lock" to behave like "Control." Then train yourself to use the caps lock key (to the left of the "A") instead of the control key down in the corner. This will make the whole experience both far more productive and far more comfortable.
see: Emacs on Mac OS X Leopard key bindings
See these related questions:
What’s in your .emacs?
Emacs and Python
You can try following extensions:
(require 'smooth-scrolling)
(require 'multiple-cursors)
(require 'ace-jump-mode)
(require 'expand-region)
(require 'inline-string-rectangle)
(require 'mark-more-like-this)
(require 'key-chord)
(require 'browse-kill-ring)
(require 'idle-highlight-mode)
(require 'htmlize)
(require 'icicles)
(require 'highlight-parentheses)
(require 'golden-ratio)
(require 'projectile)
(require 'helm-projectile)
(require 'rainbow-mode)
(require 'anything-config)
(require 'highlight-symbol)
(require 'markerpen)
(require 'flyspell)
also you can distinguish TAB and C-i, then you'll have one more simple short-key.
(define-key input-decode-map (kbd "C-i") (kbd "H-i"))
(define-key input-decode-map (kbd "C-M-i") (kbd "H-M-i"))
(global-set-key (kbd "H-i") 'kill-ring-save)
(global-set-key (kbd "M-i") 'kill-ring-save)
(global-set-key (kbd "H-M-i") 'ace-jump-line-mode)
(global-set-key (kbd "C-c H-i") 'ido-switch-buffer)
find more:
https://github.com/whunmr/dotemacs/blob/master/init.el
To add on to a few others' comments, I currently am running with the following modifier key set up:
Caps-lock = Control
Control = Option
Option = Inactive
Command = Command
Under Emacs (btw, you mentioned Aquamacs, go with Emacs.app instead) I then specify via the preferences to have Option = Command and Command = Option. This places the two most used keys (C and M) just off the home row and just off the space bar, which I've found to be very comfortable to use.
To go with Emacs.app, just use MacPorts to install it
sudo port install emacs-app
Also, I'm going to put my encouragement in there with everyone else; You have to try this for an extended period of time or you will not stick with it. Go through the tutorial multiple times (C-h t), browse through the Info manual (C-h r), if you don't know how to use Info, go through the Info manual (C-h i h) (it's really an incredible documentation system), and for about 30 of the best tips I've ever heard written in a really concise manner, visit Yegge's old effective Emacs post. Beyond all that, really turn off everything else and just go for it. When you come up against something you don't know how to do, take the opportunity to research it, repeat it a few times, and then move on. You'll slow down a lot at first but afterwards you will be much more efficient at editing any sort of text out there.
I've created a modular emacs config for myself. Feel free to take a look here.
Please check out emacs starter kit for some of the best defaults for emacs.
You might also want to checkout this screencast
For emacs 24 you might like to have a look at emacs-prelude.
You can look to my emacs configs, located on my site. Aquamacs-specific configuration you can find in separate file