楽譜を作成するソフト

楽譜を作成するフリーのソフトはいくつかありますが、僕はLilyPondLilyPondというソフトを好んで使っています。

GUIで楽譜を書くソフトが多いなか、LilyPondはテキストファイルとして作成したファイルをコンパイルすることで楽譜を作ります。簡単なものから複雑なものまで、高品位な楽譜を作ることができます。UNIX系のOS(GNU/LinuxやFree BSD)、MacOS X、Microsoft Windowsで使えます。機会があれば書き方の紹介などもしていきたいと思います。

EmacsでOSの違いを判定する変数

Emacsの設定ファイルでOSによって設定を変えたい場合は、
system-typeという変数を使います。

system-typeの値は
`gnu’ compiled for a GNU Hurd system.
`gnu/linux’ compiled for a GNU/Linux system.
`gnu/kfreebsd’ compiled for a GNU system with a FreeBSD kernel.
`darwin’ compiled for Darwin (GNU-Darwin, Mac OS X, …).
`ms-dos’ compiled as an MS-DOS application.
`windows-nt’ compiled as a native W32 application.
`cygwin’ compiled using the Cygwin library.
という値になりますので、例えば

(if (eq system-type 'gnu/linux)
    (load "~/.emacs.d/.gnu-linux.emacs")
)

とすれば、GNU/Linuxの場合のみの設定ができます。

Git使いになろう:ひとりで使う(6:一つ前のコミットまでHEADの参照のみを戻す)

さて、

$ git reset --hard HEAD^

では、ワーキングツリー、インデックス共に一つ前のコミットに戻りましたが、
commitだけを戻す場合は

$ git reset --soft HEAD^

を使います。

$ git status
On branch master
nothing to commit, working directory clean
$ git --no-pager log 
commit ee8831f07fcd5007816ef6e75682b826659a79cd
Author: tomohiro <tomohiro@example.com>
Date:   Fri Jan 1 20:51:25 2016 +0900

    add URL
    
    add the URL of the Ragtimeblues

commit ab374c5f64e3de33b079b9e013ac2cec7830935d
Author: tomohiro <tomohiro@example.com>
Date:   Fri Jan 1 16:57:09 2016 +0900

    first commit

という状態で、

$ git reset --soft HEAD^

を実行してみると、

$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	modified:   sample.txt

tomohiro@imola:~/sandbox.test$ git --no-pager log
commit ab374c5f64e3de33b079b9e013ac2cec7830935d
Author: tomohiro <tomohiro@example.com>
Date:   Fri Jan 1 16:57:09 2016 +0900

    first commit

となり、コミットのみが一つ前に戻せます。