Posts Tagged ‘How to’

On a previous post I described how to change the LaTeX options of the Cadabra notebook.

I collaborate with a colleague, who uses the standard cadabra installation. Therefore, If I write a Cadabra notebook, he needs to pullback the personalised notebook to the standard one. The pullback script can be downloaded here!!!

Author: Oscar Castillo-Felisola

Created: 2014-02-18 Tue 20:20

Emacs 24.3.1 (Org mode 8.2.5h)


Read Full Post »

Just by playing around with CADABRA, I found out the existence of a super-useful LaTeX package, called breqn, which allows to break long equations at the edge of the page… like the wraping feature of most text editors.

However, when one manipulates really long expressions, I’d like to break these long equations through the page. I’m still looking for this feature… in that case I can improve even more the behaviour of cadabra‘s notebook, when compiling it to LaTeX.

Any suggestions???


Read Full Post »

Goal: a cadabra notebook more LaTeX friendly.

  1. I run a Debian system. Don’t know why, but the original source code in the git repo didn’t work!!!What did I do? I downloaded the code from the Debian repository.
    $ sudo apt-get build-dep cadabra # Install all dependences
    $ mkdir -p ~/Software # Create a folder to download the source
    $ cd ~/Software # Move to the folder
    $ apt-get source cadabra # Download the source code (from Debian)
  2. On the cadabra folder created through the last command line, I looked for the window.cc file and open it
    $ emacs cadabra-1.29/gui/window.cc &
  3. On the window.cc file I changed:
    • The LaTeX package color by the improved xcolor, by changing the string
      << "\\usepackage[usenames]{color}\n"


      << "\\usepackage{xcolor}\n"
    • I added the LaTeX package listings, which improves the verbatim properties (among other things). Right after the mentioned xcolor line, I added the following
      << "\\usepackage{listings}\n"
      << "\\lstset{\n"
      << "  basicstyle=\\small\\color{blue}\\ttfamily,\n"
      << "  breaklines=true,\n"
      << "  columns=fullflexible,\n"
      << "  commentstyle=\\color{gray!60},\n"
      << "  morecomment=[l]{\\%\\%},\n}"

      This allows the Cadabra code to break at the end of the line instead of going out of the page, when compiled to LaTeX (similar to what breqn does on equations).

    • Now, I changed on the DataCell::c_input: case,1 the strings {\\color[named]{Blue}\\begin{verbatim}\n by \\begin{lstlisting}\n, and \n\\end{verbatim}}\n by \n\\end{lstlisting}\n.Far below, the lines with the code if(ln=="{\\color[named]{Blue}\\begin{verbatim}") { should be changed to if(ln=="\\begin{lstlisting}") {, as well as else if(ln=="\\end{verbatim}}") { should be changed to else if(ln=="\\end{lstlisting}") {.
    • Save all the changes
  4. Finally, time to compile
    $ ./configure
    $ make
    $ sudo make install
  5. If your compilation/installation went through, and you try to open an old cadabra notebook (a notebook created with the original cadabra code), the program will complain that the file is not compatible… but I created a small script to transform the old files into new files! Download it here!!USAGE:
    $ ./transf_cadabra oldfile.cnb newfile.cnb


1This is located a few lines below the lines where the LaTeX preamble is defined

Author: Oscar Castillo-Felisola

Created: 2014-02-18 Tue 10:09

Emacs 24.3.1 (Org mode 8.2.5h)


Read Full Post »

Hello there!

Yesterday I installed Linux Mint DEbian (or LMDE) on one of my machines. If you check the Blog Website, the last released version was the 201303. From last March until now, a lot of packages have been updated, therefore it is customary to update (and upgrade) the system right after the installation.

Nonetheless, if you do that… things will go completely wrong.

Fortunately, I found this post on the official Linux Mint forum. Thus I post the steps I follow 1

# apt-get update
# apt-cache policy debian-system-adjustments

if the Installed and Candidate packages are not the same, then install the new one… and then proceed to the upgrade of the system,

# apt-get install debian-system-adjustments  
# apt-get dist-upgrade


1You will need root power, or using the sudo command at the beginning of each line

Read Full Post »

Global Indentation

In order to get what people like to call smart indentation on Emacs, the easiest way is to add a couple of lines to the .emacs configuration to declare that every newline should be indented.

(define-key global-map (kbd "RET") 'newline-and-indent)
(setq-default indent-tabs-mode t)

The first line defines a global1 shortcut 2 for the command newline-and-indent assigned to the RET key (known Enter).

The second line turns-on (the t at the end means true) the TAB indentation… if it’s not turned-on by default!


1global means that it is valid for any emacs mode
2In emacs-lisp it is called define-key

Author: Oscar Castillo-Felisola

Created: 2013-11-07 Thu 15:08

Emacs 23.4.1 (Org mode 8.2.1)

Read Full Post »

According to this post, the instructions to install the latest Skype on Debian are

$ sudo dpkg --add-architecture i386
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo dpkg -i skype-debian_4.1.0.20-1_i386.deb
$ sudo apt-get install -f
$ sudo dpkg -i skype-debian_4.1.0.20-1_i386.deb

I followed these instructions and it worked alright on my second try!… Don’t know why the first time my Skype account was not recognised.

Ok, if it work… just remember that credit is not mine!


Author: Oscar Castillo-Felisola

Created: 2013-10-14 Mon 11:25

Emacs 23.4.1 (Org mode 8.2.1)


Read Full Post »

Yesterday I started to edit an old \LaTeX  file, and it happened that in my set of definitions I changed a bold math-operator with no arguments \df, by a math-operator with one argument (which happens to by the following word) \de{#1}.

The problem

The issue now is that I should go all over the text finding the \df command and replaced by \de{#1}. But note that the is a delimiter with the curly bracket!

The solution

A while ago I found a page called , and I learn about emacs’ macro, i.e., a set of rules you define and then can be applied recursively.

How is it done?

A short explanation is given at .

In my case I follow that rules below:

  • Press F3 to start recording the macro.
  • Look for the initial command and change it by the other using M-% \df (press enter) \de{ (press enter)
  • Move the cursor forward until the end of the next word using the command M-f
  • In that cursor place close the curly bracket }
  • Finish the recording of the macro by pressing F4.

Finally, to apply the macro use F4 to apply it once, M-4 F4 to apply it 4 times or M-0 F4 to apply it until it fails.

Read Full Post »

Older Posts »