Go言語 インストールメモ
Google発オープンソースプログラミング言語 "The Go Programming Language"を早速試してみた。
インストールで1ヶ所詰まったのでメモ。
環境はMac OS X 10.5.8。
基本、公式のInstalling Goを参考に。
環境変数
以下を~/.bashrc, ~/.profile 等に設定。
GOROOTはどこでもいいし、GOROOTとGOBINも離れててOK。
export GOROOT=$HOME/go
export GOOS=darwin
export GOARCH=amd64
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
ソースコード取得
hg clone -r release https://go.googlecode.com/hg/ $GOROOT
ここで
ValueError: unknown locale: UTF-8
というエラーで止まってしまった。
言語設定2行を~/.profileに入れて回避。
ビルド
gccが入ってないならインストール。
$GOBINで設定したディレクトリが無いなら作って、PATHに入ってる事を確認。
cd $GOROOT/src/
./all.bash
--- cd ../test
N known bugs; 0 unexpected bugs
と出れば成功。
Hello World
hello.goファイル作成
package main import "fmt" func main() { fmt.Printf("hello, world\n") }
リンク
6l hello.6
これで6.outができる。
6l -o hello.out hello.6
とすれば名前も変えられる。
実行
./6.out
> hello, world
よしよし。
ElScreen
Screen風の画面切り替え用Emacsスクリプト。タブ表示・操作が便利。
.emacs.el
;; ElScreen (require 'elscreen) (if window-system (define-key elscreen-map "\C-z" 'iconify-or-deiconify-frame) (define-key elscreen-map "\C-z" 'suspend-emacs))
使い方
- C-z c : 新規ウィンドウ
- C-z k : ウィンドウを閉じる
- C-z K : 他のウィンドウを閉じる
- C-z p : 前のウィンドウ
- C-z n : 次のウィンドウ
- C-z a : 直前のウィンドウ
- C-z 0-9 : ウィンドウ番号指定
C-z はデフォルトでsuspendなので、変更したければ
(setq elscreen-prefix-key "\C-z")
C-x C-zもsuspendなので、とりあえずそのまま。
escreen.elの
(defcustom elscreen-display-tab t
を
(defcustom elscreen-display-tab nil
にしてやればタブが消えて見た目スッキリ。
以下を.emacs.elに足せばtitleにスクリーンの一覧が表示されるので、クリックでタブを切り替えたりしないのであれば困らない。
(defun elscreen-frame-title-update () (when (elscreen-screen-modified-p 'elscreen-frame-title-update) (let* ((screen-list (sort (elscreen-get-screen-list) '<)) (screen-to-name-alist (elscreen-get-screen-to-name-alist)) (title (mapconcat (lambda (screen) (format "%d%s %s" screen (elscreen-status-label screen) (get-alist screen screen-to-name-alist))) screen-list " "))) (if (fboundp 'set-frame-name) (set-frame-name title) (setq frame-title-format title))))) (eval-after-load "elscreen" '(add-hook 'elscreen-screen-update-hook 'elscreen-frame-title-update))
Carbon Emacs memo
さっさと使い始めたいときの設定
~/.emacs.el
;; load path (setq load-path (cons "~/bin/emacs/lisp" load-path)) ;; no startup page (setq inhibit-startup-message t) ;; no backup file (setq backup-inhibited t) ;; window setting (if window-system (progn (setq initial-frame-alist '*1
;; enable history cache (setq history-length t) (when (require 'session nil t) (setq session-initialize '(de-saveplace session keys menus places) session-globals-include '*2 ;; enable minibuf isearch (require 'minibuf-isearch nil t)
session.el, minubuf-isearch.el はここから。
コマンド履歴だけならsession.el不要。
-> session.el
-> minibuf-isearch.el
.profile
alias emacs='open -a /Applications/Emacs.app'
*1:width . 100) (height . 40) (top . 180))) (set-background-color "Black") (set-foreground-color "White") (set-cursor-color "Gray")
*2:kill-ring 50) (session-file-alist 500 t) (file-name-history 10000))) (add-hook 'after-init-hook 'session-initialize) ;; keep cursor position (setq session-undo-check -1
MacBook memo
CentOS memo
php-mbstringがデフォルトで入ってない。