Thursday, June 30, 2016

MacOSX, El Capitan での日本語入力,「ライブ変換」(その3)。ATOK 風キーバインドに変更。しかし遅すぎて、やっぱり使うのをやめた

MacOSX, El Capitan での日本語入力,「ライブ変換」(その3)。ATOK 風キーバインドに変更。しかし遅すぎて、やっぱり使うのをやめました。

 

以下のページの通りにやってみました。そうしたら、コンピュータが固まったのかと思うぐらい遅すぎて何もできなくなった。だから、やっぱり「ライブ変換」を使うのをやめました。

El Capitan (OSX 10.11)日本語入力プログラムをATOK風キーバインドに

(セキュリティを一時的に解除し,システムフォルダを変更します。自己責任でお願いします)

1;「システム環境設定」→「キーボード」→「入力ソース」を開いて、「Windows風のキー操作」のチェックを外す。
2:システムを終了し,起動時に「コマンドキー+R」を同時に押して「リカバリーモード」で立ち上げる。
3:メニューバー「ユーティリティ」の一番下,ターミナルを選択
4:ターミナルにて,英数小文字で csrutil disable と打ち込んで,リターンキー。これでSIPセキュリティが解除されます。
5:メニューバー「林檎マーク(アップルメニュー)」から「再起動」
6:通常起動したら,Finderにてファイルメニュー「移動」から「フォルダに移動」を選択。
/System/Library/Input Methods/JapaneseIM.app/Contents/Resources
と入れる。
7:開いたフォルダで,「KeySetting_Windows.plist」を見つける。そしてファイルの名前を変更しておく。「KeySetting_Windows_original.plist」など。(管理者パスワード必要)
8:ここからダウンロードした「KeySetting_Windows_atoklike.plist」をこのフォルダに入れる。(管理者パスワード必要) そしてファイル名を「KeySetting_Windows.plist」に変更。
9:システムを終了,起動時に「コマンドキー+R」を同時に押してもう一度「リカバリーモード」で立ち上げる。
10:メニューバー右「window」の横にある「ユーティリティ」の一番下,ターミナルを選択
11:ターミナルにて,英数小文字で csrutil enable と打ち込んで,リターン。これでSIPセキュリティが戻ります。(当初記事ではcsrutil eableとなっていました。コメント欄からの指摘を受け,訂正いたしました。ありがとうございました。)
12:メニューバー「林檎マーク(アップルメニュー)」から「再起動」
13;通常起動後,「システム環境設定」→「キーボード」→「入力ソース」を開いて、「Windows風のキー操作」にチェック。

 

MacOSX, El Capitan での日本語入力,「ライブ変換」(その2)。launchd で自動的に「アクティヴィティモニタ」を再起動

MacOSX, El Capitan での日本語入力,「ライブ変換」(その2)

でも、やっぱり気になるので再挑戦。

 

(1)El Capitan の「ライブ変換」は遅い。「アクティヴィティモニタ」の再起動

対策としては、「アクティヴィティモニタ」を再起動すれば良いらしい。しかし、そんなこと面倒くさすぎていちいちやってられない。

OS X El Capitanの日本語IMが重たくなったら

 

(2)「アクティヴィティモニタ」再起動の自動化。launchd.plist

以下のページを参考にした。

【OSX】日本語変換が遅くなったときにショートカット一発で解消する方法【El Capitan】

Mac(OS X)ではcronじゃなくてlaunchdでやる

Mac OS Xでlaunchdでcronのように定期実行するメモ - launchd.plistの作成とか

 

(3) 自作した「killall_JapaneseIM.sh」「killall_JapaneseIM.plist」を貼っておく。本当にちゃんと動いてくれるのかな?

killall_JapaneseIM.sh

killall JapaneseIM

 

killall_JapaneseIM.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
       <string>killall_JapaneseIM</string>
       <key>ProgramArguments</key>
       <array>
              <string>~/Google\ Drive/Dropbox/tools/killall_JapaneseIM.sh</string>
       </array>
       <key>StartCalendarInterval</key>
       <dict>
              <key>Hour</key>
              <integer>1</integer>
              <key>Minute</key>
              <integer>0</integer>
       </dict>
       <key>StandardOutPath</key>
       <string>/Users/kybrdst/Google\ Drive/Dropbox/log</string>
</dict>
</plist>

Wednesday, June 29, 2016

MacOSX, El Capitain での日本語入力。AquaSKK, ライブ変換

MacOSX, El Capitan での日本語入力について、偶然、目に入ってきた情報。

「AquaSKK」と「ライブ変換」。

 

(1)「AquaSKK」

AquaSKK布教動画を作ってみました

この動画を見て「素晴らしい!」と思い、使ってみたくなった。

そこで、実際に、自分の iMac にインストールしてみた。が、動かない・・・。

AquaSKK に切り替えると、すぐに、不正に終了してしまう。なぜか?

 

 AquaSKK 4.2 リリースのお知らせと今後について

また、これからメンテナンスされる予定がなくなるとのこと。 

 

(2)「ライブ変換」

まったく、気にしてなかったので、今日、初めて、知りました。すばらしい!

El Capitanの日本語入力が素晴らしく進化している件について

 

でも、実際に試してみたら、挙動が「遅い!」「遅すぎる!」 だから、使うのをやめました。

El Capitan日本語入力やめました

 

(3)かわせみ

ということで、「かわせみ」に戻りました。

かわせみ2

Tuesday, June 28, 2016

英語配列キーボード

英語配列キーボードを使っています。これからもそれは変えないでしょう。

 

理由の一つは、「韓国語入力もするから」ということ。

最近、増えた理由としては、「CLIでコンピュータを使うとき、やはり、英語配列キーボードの方が使いやすいように思う」ということ。

 

でも、そうすると、いろいろと工夫する必要が出てくるのです。

  1. 英語入力と日本語入力の切り替え
  2. Alfred など、アプリケーションの起動

などなど。それは、また別の機会に。

Saturday, June 25, 2016

fasd, .bashrc に alias を設定

fasd, .bashrc に alias を設定。

################################################
# fasd
################################################

eval "$(fasd --init auto)"

alias fa='fasd -a' # any
alias fs='fasd -si' # show / search / select
alias fd='fasd -d' # directory
alias ff='fasd -f' # file
alias fsd='fasd -sid' # interactive directory selection
alias fsf='fasd -sif' # interactive file selection

# cd, same functionality as j in autojump
alias fcd='fasd_cd -d'
#alias fcd_no_cl='fasd_cd -d'
#alias fcd="fcd_no_cl;clear;pwd;ls -lGh"

# cd with interactive selection
#alias scd="'fasd_cd -d -i;clear';pwd;ls -lGh" # cd with interactive selection
alias scd_no_cl='fasd_cd -d -i' # cd with interactive selection
alias scd="scd_no_cl;clear;pwd;ls -lGh"

# open with interactive selection
function fscd_open() {
    open "$(fasd -sif)"
}
alias sop='fscd_open'


alias fvi='ff -e /opt/local/bin/vim' # quick opening files with vim
alias fmp='ff -e mplayer' # quick opening files with mplayer
#alias o='a -e xdg-open' # quick opening files with xdg-open

 

そうすると、scd という自分の設定したコマンドを叩くと、「過去、自分が入ったディレクトリの一覧」から、「今、自分の行きたいディレクトリ」を対話的に選んだうえで、そこに直接、行くことができる。また、コマンド終了後、clear;pwd;ls -Gh が終わっている。


確かに、便利だ。

ただし、気になる。fasd に慣れすぎると、各ファイルやディレクトリの位置を自分があまり意識しないようになるのかな? しかし、それは怖いような気もするが・・・。

 

<参考にしたページ>
fasdチュートリアル(メモ)

peco と fasd で快適なターミナル生活(Mac へのインストール) 

clvv/fasd 

Fasd - Quickly Jump to Recent Files and Folders - Linux CLI 

peco, .bashrc に alias 他を設定

peco, .bashrc に alias 他を設定。

function find_cd() {
   cd "$(find . * -maxdepth 1 | peco)"
}
alias pcd="find_cd;clear;pwd;ls -lGh"

function find_open() {
   open "$(find . * -maxdepth 1 | peco)"
}
alias pop="find_open;clear;pwd;ls -lGh"

function find_less() {
   less "$(find . * -maxdepth 1 | peco)"
}
alias pl="find_less;clear;pwd;ls -Gh"

function find_ls() {
    ls "$(find . * -maxdepth 1 | peco)"
}
alias pls="find_ls"

 


(1)ディレクトリに入る  pcd

pcd という自分の設定したコマンドを叩き、カレント・ディレクトリから、自分が入りたいディレクトリを選ぶ。コマンド終了後には、その指定したディレクトリに、すでに入っており、clear; pwd;ls もしてある。

 

(2)ファイルを開く  pop

pop という自分の設定したコマンドを叩き、カレント・ディレクトリから、自分が入りたいファイルを選ぶ。コマンド終了後には、その指定したファイルが開かれてある。

 

(3)テキストファイルを見る  pl

 

(4)指定したディレクトリの中身をリスト表示する  pls

 

<参考にしたページ>
え、まだpecoを使ってないの??? 

Friday, June 24, 2016

peco が面白そうだ

peco が面白そうだ。
(ただし、fasd はよく分からない。インストールはできたようだが、思ったように動かない・・・) 

pecoの基礎の基礎
pecoの基礎の応用



Tuesday, June 21, 2016

MacOSX, .bashrc を読み込む。.bash_profile の設定

MacOSX, .bashrc を読み込むために、.bash_profile を以下のようにしておく。
そして、.bashrc にがしがしと「自分の設定」を書き込んでいく。
#.bashrcがあれば読み込む
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
 

<参考にしたページ>
[bash] ターミナルを起動しても.bashrcが読み込まれていない時に確認すること

Friday, June 17, 2016

Google Chrome 間での同期、Vimium は便利

Google Chrome 間での同期は便利だと思う。
iPad と iMac の間で、bookmark, history が同期されているのは、とても便利だ。

そして、Google Chrome は、もう Vimiim 無しでは使えない。

Wednesday, June 15, 2016

CSS 編集。Marked のスタイルシート(Markdown)

CSS を編集しました。

MacOS X には、Markdown をプレビュー表示する、Marked というアプリがある。そのスタイルシートを、つまり、CSS の編集したということです。

CSS自体が、まだ、よく理解できていないので、作りかけですが、まあ、なんとか、紙に印刷するには使えるかな?

※ h5 の表示だけがうまくできない。なぜかな?

<参考にしたページ>
http://yamaqblog.tokyo/?p=15732

/*
   This document has been created with Marked.app <http://markedapp.com>, Copyright 2011 Brett Terpstra
   Please leave this notice in place, along with any additional credits below.
   ---------------------------------------------------------------
   Title: Theme title
   Author: Your name and optional url
   Description: Basic description of the theme.
*/

body
{
    -webkit-font-smoothing:antialiased;
    font:normal .8764em/1.5em Arial,Verdana,sans-serif;
    margin:0
}

html>body
{
    font-size:13px
}

li
{
    font-size:110%
}

li li
{
    font-size:100%
}

li p
{
    font-size:100%;
    /*margin:.5em 0;*/
    margin:.5em 0;
    /*margin:0 0 0 1em;*/
    /*margin-left:1.2em;*/
}

h1
{
    color:#000;
    font-size:1.7em;
    line-height:.6563em;
    /*margin:.6em 0;*/
    margin:1em 0 0.5em 0;
}

h2
{
    color:#111;
    font-size:1.5em;
    line-height:.875em;
    /*margin:.875em 0;*/
    margin:0 0 0.5em 0.8em;
}

h3
{
    color:#111;
    font-size:1.3em;
    line-height:1em;
    /*margin:1em 0;*/
    margin:0 0 0.5em 1.6em;
}

h4
{
    color:#111;
    font-size:1.2em;
    line-height:1.1667em;
    /*margin:1.1667em 0;*/
    margin:0 0 0.5em 2.8em;
}

/*h5
{
    color:#111;
    font-size:1.1em;
    line-height:1.1em;
    /*margin:1.3em 0;*/
    margin:0 0 0.5em 3em;
/*}*/

h5
{
    font-size:1.1em;
    line-height:1.2em;
    margin:0 0 0.3em 3em;
}

h6
{
    font-size:1.1em;
    line-height:1.5em;
    /*margin:1.5em 0;*/
    margin:0 0 0.3em 4em;
}

body,p,td,div
{
    color:#111;
    font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;
    word-wrap:break-word
}

h1,h2,h3,h4,h5,h6
{
    /*line-height:1.5em;*/
    line-height:1.2em;
}

a
{
    -webkit-transition:color .2s ease-in-out;
    color:#0d6ea1;
    text-decoration:none
}

a:hover
{
    color:#3593d9
}

/*h2 em
{
    color:#111;
    padding-left:10px;
    text-shadow:0 1px 0 #FFF
}*/

blockquote p
{
  font-size:110%;
  font-style:italic;
  line-height:1.6em;
}

.footnote
{
    color:#0d6ea1;
    font-size:.8em;
    vertical-align:super
}

#wrapper img
{
    max-width:100%;
    height:auto
}

dd
{
    margin-bottom:1em
}

li > p:first-child
{
    margin:0;
    /*margin-left:1.2em;*/
}

ul ul,ul ol
{
    margin-bottom:.4em;
    /*margin-left:1.2em;*/
}

caption,col,colgroup,table,tbody,td,tfoot,th,thead,tr
{
    border-spacing:0
}

table
{
    border:1px solid rgba(0,0,0,0.25);
    border-collapse:collapse;
    display:table;
    empty-cells:hide;
    margin:-1px 0 23px;
    padding:0;
    table-layout:fixed
}

caption
{
    display:table-caption;
    font-weight:700
}

col
{
    display:table-column
}

colgroup
{
    display:table-column-group
}

tbody
{
    display:table-row-group
}

tfoot
{
    display:table-footer-group
}

thead
{
    display:table-header-group
}

td,th
{
    display:table-cell
}

tr
{
    display:table-row
}

table th,table td
{
    font-size:1.1em;
    line-height:23px;
    padding:0 1em
}

table thead
{
    background:rgba(0,0,0,0.15);
    border:1px solid rgba(0,0,0,0.15);
    border-bottom:1px solid rgba(0,0,0,0.2)
}

table tbody
{
    background:rgba(0,0,0,0.05)
}

table tfoot
{
    background:rgba(0,0,0,0.15);
    border:1px solid rgba(0,0,0,0.15);
    border-top:1px solid rgba(0,0,0,0.2)
}

figure
{
    display:inline-block;
    margin-bottom:1.2em;
    position:relative;
    margin:1em 0
}

figcaption
{
    font-style:italic;  
    text-align:center;
    background:rgba(0,0,0,.9);
    color:rgba(255,255,255,1);
    position:absolute;
    left:0;
    bottom:-24px;
    width:98%;
    padding:1%;
    -webkit-transition:all .2s ease-in-out;
}

figure:hover>figcaption
{
    /* background:rgba(0,0,0,1) */
}

/* Styles used when "Tab-indented text is poetry" is set */
.poetry pre
{
    display:block;
    font-family:Georgia, Garamond, serif!important;
    font-size:110%!important;
    font-style:italic;
    line-height:1.6em;
    margin-left:1em
}

.poetry pre code
{
    font-family:Georgia, Garamond, serif!important
}

/* important rules for keeping line-height from being affected by sub */
sup,sub,a.footnote
{
    font-size:1.4ex;
    height:0;
    line-height:1;
    position:relative;
}

sup {
    vertical-align:super;
}

sub {
    vertical-align: sub;
    top: -1px;
}

p,h5
{
    font-size:1.1429em;
    line-height:1.3125em;
    margin:1.3125em 0
}

dt,th
{
    font-weight:700
}

table tr:nth-child(odd),table th:nth-child(odd),table td:nth-child(odd)
{
    background:rgba(255,255,255,0.06)
}

table tr:nth-child(even),table td:nth-child(even)
{
    background:rgba(0,0,0,0.06)
}

@media print {
    /* print only styles. Keep it clean */
    body
    {
        overflow:auto
    }
    img, pre, blockquote, table, figure, p {
        page-break-inside: avoid
    }
    .footnotes { page-break-before: always }

    #wrapper
    {
        background:#fff;
        color:#303030;
        font-size:85%;
        padding:10px;
        position:relative;
        text-indent:0
    }
}

@media screen {
    /* Screen-only styles, including inverted styles */
    .inverted #wrapper,.inverted {
        background:rgba(37, 42, 42, 1)
    }
    .inverted hr {
        border-color: rgba(51, 63, 64, 1) !important;
    }
    .inverted p,.inverted td,.inverted li,.inverted h1,.inverted h2,.inverted h3,.inverted h4,.inverted h5,.inverted h6,.inverted pre,.inverted code,.inverted th,.inverted .math,.inverted caption,.inverted dd,.inverted dt
    {
        color:#eee!important
    }
    .inverted table tr:nth-child(odd), .inverted table th:nth-child(odd), .inverted table td:nth-child(odd) {
      background: none;
    }
    .inverted a
    {
        color:rgba(172, 209, 213, 1);
    }

    #wrapper
    {
        padding:20px
    }

    /* styles for more colorful selection highlights */
    ::selection { background:rgba(157, 193, 200,.5)}
    h1::selection { background-color:rgba(45, 156, 208, .3)}
    h2::selection { background-color:rgba(90, 182, 224, .3)}
    h3::selection,
    h4::selection,
    h5::selection,
    h6::selection,li::selection,ol::selection { background-color:rgba(133, 201, 232, .3)}
    code::selection { background-color:rgba(0,0,0,.7);color:#eee}
    code span::selection {background-color:rgba(0,0,0,.7) !important;color:#eee !important}
    a::selection { background-color:rgba(255, 230, 102,.2)}
    .inverted a::selection { background-color:rgba(255, 230, 102,.6)}
td::selection,th::selection,caption::selection { background-color: rgba(180, 237, 95, .5);}
}

Sunday, June 12, 2016

Vim, マクロ。聖書本文の書式を揃える

Vim, マクロを使って、聖書本文の書式を揃える。

0f:lDJgjdd0

を、たとえば、qb,q とかで登録しておき、7@b と、打つと、

 

1:創世記/ 03章 01節
主なる神が造られた野の生き物のうちで、最も賢いのは蛇であった。蛇は女に言った。「園のどの木からも食べてはいけない、などと神は言われたのか。」
口語訳
2:創世記/ 03章 02節
女は蛇に答えた。「わたしたちは園の木の果実を食べてもよいのです。
口語訳
3:創世記/ 03章 03節
でも、園の中央に生えている木の果実だけは、食べてはいけない、触れてもいけない、死んではいけないから、と神様はおっしゃいました。」
口語訳
4:創世記/ 03章 04節
蛇は女に言った。「決して死ぬことはない。
口語訳
5:創世記/ 03章 05節
それを食べると、目が開け、神のように善悪を知るものとなることを神はご存じなのだ。」
口語訳
6:創世記/ 03章 06節
女が見ると、その木はいかにもおいしそうで、目を引き付け、賢くなるように唆していた。女は実を取って食べ、一緒にいた男にも渡したので、彼も食べた。
口語訳
7:創世記/ 03章 07節
二人の目は開け、自分たちが裸であることを知り、二人はいちじくの葉をつづり合わせ、腰を覆うものとした。

というものが、

 

1:主なる神が造られた野の生き物のうちで、最も賢いのは蛇であった。蛇は女に言った。「園のどの木からも食べてはいけない、などと神は言われたのか。」
2:女は蛇に答えた。「わたしたちは園の木の果実を食べてもよいのです。
3:でも、園の中央に生えている木の果実だけは、食べてはいけない、触れてもいけない、死んではいけないから、と神様はおっしゃいました。」
4:蛇は女に言った。「決して死ぬことはない。
5:それを食べると、目が開け、神のように善悪を知るものとなることを神はご存じなのだ。」
6:女が見ると、その木はいかにもおいしそうで、目を引き付け、賢くなるように唆していた。女は実を取って食べ、一緒にいた男にも渡したので、彼も食べた。
7:二人の目は開け、自分たちが裸であることを知り、二人はいちじくの葉をつづり合わせ、腰を覆うものとした。

となる。

Saturday, June 11, 2016

Dropbox-Uploader

Dropbox-Uploader 素晴らしい!

Chromebook, Ubuntu, Vim, 「a の横の検索キー」を ctrl キーに設定

Chromebook, Ubuntu, Vim, 「a の横の検索キー」を ctrl キーに設定したいと思い、

Ubuntu 側で、~./Xmodmap, ~./xinitrc などの設定の仕方を調べてやってみたが、

できず、できず、できず、


結局、Chromebook の設定画面から、検索キーを ctrl キーに変えて終わり(解決かな?)。


要は、Chromebook の検索キーを潰したということ。

Friday, June 10, 2016

Chromebook, Ubuntu, Vim, 日本語入力固定モードのキーボードショートカット

Chromebook, Ubuntu, Vim, 日本語入力固定モードのキーボードショートカットは、以下のように設定した。

let IM_CtrlMode = 1
inoremap <silent> <C-u> <C-r>=IMState('FixMode')<CR>

要は、Ctrl + u に設定したということ。

ただ、不思議なことに、インサートモードからノーマルモードに抜けるとき、
  • Ctrl + [ ならOK。
  • Ctrl + c はダメ。
  • もちろん、<Escape> はOK。


何が違うのかわからないけど、挙動が変わる。不思議だ。


Chromebook, Ubuntu, Vim, 日本語入力固定モードがやっとできた

Chromebook, Ubuntu, Vim, 日本語入力固定モードがやっとできました。

基本的には、以下のページの通りにやるだけ。
https://sites.google.com/site/fudist/Home/vim-nihongo-ban/vim-japanese/ime-control/ibus#TOC-IBus-Python-1.5
コマンドで切替可能な事が確認出来た場合は、以下の設定を.vimrcに追加することでim_control.vimを使用することができます。
エンジン名は使用環境に合わせて変更してください。
" 「日本語入力固定モード」の動作モード
let IM_CtrlMode = 1
" 「日本語入力固定モード」切替キー
inoremap <silent> <C-j> <C-r>=IMState('FixMode')<CR>

" IBus 1.5以降
function! IMCtrl(cmd)
  let cmd = a:cmd
  if cmd == 'On'
    let res = system('ibus engine "mozc-jp"')
  elseif cmd == 'Off'
    let res = system('ibus engine "xkb:jp::jpn"')
  endif
  return ''
endfunction

問題は、なぜ、今までできなかったのか? ということ。


それは、私は .vimrc を MacOSX のものをコピーして、Chromebook の Ubuntu で使いまわしているのだが、その中の MacVim 用の設定が干渉していた模様。
im_control
              let IM_CtrlMode = 4
              set cmdheight=2


また、思いがけず、もう一つ、この関連で困っていた問題が解決された。

これまで、Ubuntu の Vim での日本語表示がおかしかった。日本語フォントを設定しても、日本語フォントが小さいままで、大きさが変わらなかった。

しかし、それも解決!



電話の着信音量を下げる

電話の着信音量を下げておく。

これだけで、心が乱される度合いが大分、減る。

外からの電話。内線。玄関ベル。すべてがこの電話の子機に繋がっているので。

Thursday, June 9, 2016

MacOSX のアプリ。CLI と共用していくもの

MacOSX のアプリの中で CLI と共用していくものは何か? と、考えてみると、

 

(1)まずは、無条件に、この2つ + 1つ

  • MacVim
  • iTerm
  • Google Chrome

 

(2)そして、必須なアプリたち、7つ + 2つ

  • Karabiner
  • Alfred 2
  • Keyboard Maestro
  • Witch
  • Default Folder X
  • Divvy
  • Mouse Hider
  • Dropbox
  • Google Drive

このあたりはずっと使っていくと思う。

 

(3)地味だけど便利

  • BBT2
  • Due

 

(4)無くてもいいけど、あったら時々、便利かな?

  • Path Finder
  • MenuPop

 

(5)GUI アプリとして便利、使い慣れている。CLI でも代用できそうな気も・・・。

  • Mailplane 3
  • OmniOutliner
  • MarsEdit
  • Nisus Writer Express
  • Microsoft Excel

 

(6)そんなに使ってないけど、将来的に使うかな?

  • Reeder
  • Tweetbot

 

(7)番外。実は、影の下の力持ち? MacPorts を利用するために・・・

  • Xcode

Wednesday, June 8, 2016

grep, and 検索

grep, and 検索。二つ目の grep の時には、ファイル名を書かない、ということ。

grep  キーワード(1)  ファイル名  |  grep  キーワード(2)

Vim, 画面スクロールに、<Space>キーを設定

Vim の画面スクロールに、<Space>キーを設定しています。

これが、便利。

 

テキストファイルの文章を less で読むことが多いですが、less の操作性とほぼ同じになりました。

noremap <Space> <C-f> 

 

 プログラマの中には <Space>キーを、Vim の Leader にしている方もいらっしゃるようですが、 私はプログラマでもなく、Vim は主に日本語の読み書きに使うので、<Space>キーで画面スクロールという設定が便利です。

http://postd.cc/how-to-boost-your-vim-productivity/

 

 

find, xargs でヒットしたファイルをコピーする

find, xargs でヒットしたファイルをコピー したい。

find . -name “*検索語*" | xargs -J% cp -p % ~/目的先のディレクトリ

 

6日前にアップした記事を間違って削除していたようなので、再掲。

Tuesday, June 7, 2016

LaTeX, ソースコード

LaTeX, ソースコードを貼り付ける。

\documentclass[a4j,11pt]{jsarticle}

\makeatletter\def\@maketitle{% \begin{flushright}% {\large \@date}% 日付 \end{flushright}% \begin{center}% {\LARGE \@title \par}% タイトル \end{center}% \begin{flushright}% {\large \@author}% 著者 \end{flushright}% \par\vskip 1.5em
}\makeatother

\makeatletter\def\subsection{\leftskip=1em\@startsection {subsection}{1}{\z@}{-3.5ex plus -1ex minus-.2ex}{2.3ex plus .2ex}{\large \gt}}\def\subsubsection{\leftskip=2em\@startsection {subsubsection}{1}{\z@}{-3.5ex plus -1ex minus-.2ex}{2.3ex plus .2ex}{\normalsize \gt}}\makeatother


\usepackage[truedimen,margin=20truemm]{geometry}
\title{タイトル}
\author{\normalsize 名前(肩書き)}
\date{\normalsize 日付}

\renewcommand{\baselinestretch}{0.85}
\begin{document}\maketitle\noindent 日時: 2016年6月6日\\出席者: 名前(肩書き) 出席者: 名前(肩書き)出席者: 名前(肩書き) \\    出席者: 名前(肩書き)出席者: 名前(肩書き)出席者: 名前(肩書き)
\section{セクション名}
\subsection{サブセクション名}
\begin{itemize}\itemsep1pt\parskip0pt\parsep0pt
\item  アイテムの内容
\subsection{サブセクション名}
\begin{itemize}\itemsep1pt\parskip0pt\parsep0pt
\item  アイテムの内容

\end{enumerate}

LaTeX に挑戦!

LaTeX に挑戦!

 MacOSX で TeXShop を使いました。すべてをコマンドラインからで完結できるようにしたいのですが・・・

 

はじめてTeXを使う人が知っておくといいことまとめ
http://qiita.com/Tats_U_/items/01d48eb70a8b359b0d95

LaTeX の概要
http://www.wakayama-u.ac.jp/~tokoi/lecture/shori1/latex.html

何が行われているか?
http://www.clas.kitasato-u.ac.jp/~fujiwara/infoScienceB/TeX/whatisgoing/whatisgoing.html

LaTeX to PDF
http://www-rohan.sdsu.edu/~aty/bibliog/latex/LaTeXtoPDF.html

texで資料を作成しています。タイトルを1ページめの上に表示するのですが、形式が
右詰めで日付。中央に大きめの文字でタイトル。右詰めで作者。となるように設定したい
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1018085745 

文字サイズを変更する
http://www.latex-cmd.com/style/size.html 

LaTeX \section などで箇条書きのように字下げする方法
http://www.math.kobe-u.ac.jp/~kodama/tips-latex-indent-section.html 

LaTex で subsection をインデントする
http://ameblo.jp/ppsh41/entry-10873160319.html 

LATEX 文字操作コマンド
http://denko-laboratory.ddo.jp/pc/latex/latex_command_char.htm 

 箇条書き
http://akita-nct.jp/yamamoto/comp/latex/make_doc/item/item.php 

TeXでの行間の調整方法
http://qiita.com/ayakix/items/93f90482907d4585ce4c 

 

Sunday, June 5, 2016

VimFiler 内でソート

VimFiler 内でソートできる。

shift + s を押せばよいとのこと。

<参考にしたページ>

http://d.hatena.ne.jp/osyo-manga/20111115/1321341210

Vimium の設定

Vimium の設定。記録のために。

便利すぎて、Vimium エクステンションの無い Google Chrome はもう使えない。

 

Custom key mappings

# browse
unmap l
map l goForward
unmap h
map h goBack
map c enterInsertMode

# scrollmap , scroll left
map . scroll right
unmap b
map b scrollFullPageUp

# tabmap u restoreTab
unmap x
unmap d
map d removeTab

map gl nextTab
map gh previousTab
map gH firstTab
map gL lastTab

# bookmarksun
map m
map m Vomnibar.activateBookmarks
map M Vomnibar.activateBookmarksInNewTab
#map M openBookmarks
#map m openBookmarksInNewTab

# linkmap i LinkHints.activateModeToOpenInNewTab
#map I LinkHints.activateModeWithQueue

# paste
map p openCopiedUrlInCurrentTab
map P openCopiedUrlInNewTab

 

Custom search engines

w: http://www.wikipedia.org/w/index.php?title=Special:Search&search=%s Wikipedia

# More examples.

# (Vimium supports search completion Wikipedia, as

# above, and for these.)

g: http://www.google.com/search?q=%s Google

# l: http://www.google.com/search?q=%s&btnI I'm feeling lucky...

y: http://www.youtube.com/results?search_query=%s Youtube

gm: https://www.google.com/maps?q=%s Google maps

# b: https://www.bing.com/search?q=%s Bing

# d: https://duckduckgo.com/?q=%s DuckDuckGo

az: http://www.amazon.co.jp/s/?field-keywords=%s Amazon

 

# qw: https://www.qwant.com/?q=%s Qwant

 

Characters used for link hints

yuopihjklnm

 

Saturday, June 4, 2016

Unite.Vim, VimFiler, ブックマークの設定

VimFiler, Unite.Vim, ブックマークの設定をした。

  1. MacVim を立ち上げたら、自動的に VimFiler が開くようになった。.gvimrc に記述。
      autocmd VimEnter * VimFiler
  2.  Unite.Vim のブックマークにいくつかのフォルダを登録した。.vimrc にキーボード登録。
     "ブックマーク一覧
      nnoremap <silent> ,ui :<C-u>Unite bookmark<CR>
     "ブックマークに追加
      nnoremap <silent> ,uo :<C-u>UniteBookmarkAdd<CR>
  3.  Unite.Vim のブックマークから移動したいフォルダを選んだら、VimFiler が立ち上がるようにした。
     " UniteBookMarkAdd で追加したディレクトリを Unite bookmark で開くときのアクションのデフォルトを Vimfiler にする
      call unite#custom_default_action('source/bookmark/directory' , 'vimfiler') 

 

以上です。

lesskey で、less のキーバインドを変更(MacOSX)

lesskey で、less のキーバインドを以下のように変更しました(MacOSX)。
次のファイルに移る時  =>  n
前のファイルに移る時  =>  p

変えた内容は三つ。
  1. 「ファイル間の移動」キーバインドの変更
  2. 「検索」キーバインドの変更
  3. 「ファイルを閉じる」キーバインドの変更
 以下のように記述します。
n next-file
p prev-file

^n repeat-search^p reverse-search
;d remove-file
「n」は、もともとの検索キーバインドとぶつかるので、 検索する場合は、control キーを押すように変えたというわけです。ファイルを閉じる時のキーバインドも変えた。
以前から、複数のテキストファイルを less に開き、順に読んでいく時、ファイル間の移動時に使用するキーバインドが不満だった。
次のファイルに移る時  =>  : n
前のファイルに移る時  =>  : p
:  を入力するには、毎回、左手小指で Shift キーを押さなければならない。それが大変に不満だったのだ。

だから、今回、調べた。調べた。調べた・・・(  ーーー> 何とかできました)。

(1)まず、MacOSX に標準でインストールされいてる less では lesskey が使えないことが分かった。なぜだ? だから、インストール。
sudo  port  install  less
http://qiita.com/phenan/items/1c60a1123612a55e76d5
http://cortyuming.hateblo.jp/entry/20130119/p1

(2)less key コマンドで、キーバインドを設定。変更したいキービンドを書いた「入力ファイル」から、~/$HOME/.lesskey ファイルを生成。
https://linuxjm.osdn.jp/html/GNU_less/man1/lesskey.1.html
lesskey  -o  入力ファイル  ~/$HOME/.lesskey
 具体的には、「入力ファイル」に以下のように記述しました。
p prev-file
n next-file

(3).bash_profile に以下を記録。
export LESSKEY=$HOME/.lesskey

その結果、以下のようなキーバインドに変更されました。めでたし、めでたし。
次のファイルに移る時  =>  n
前のファイルに移る時  =>  p

grep, sort, awk, 「現住陪餐会員と現教職のみ」を検索して表示

grep,  sort, awk, 「現住陪餐会員と現教職のみ」を検索して表示したい。

grep -e "現住陪餐会員 \| 現教職" asty-ch_member.tab | LANG=ja_C sort -k4,4 -k5,5 | awk '{print NR": ",$1,$6,$7,$8,$4,$5}' | less

 

すると、

1:  姓名  男性  現住陪餐会員  1973/5/31  せい  めい

こんな感じで表示される。

Friday, June 3, 2016

birthday_search.sh の改良。年齢も表示される

birthday_search.sh を改良し、年齢も表示されるようにした。大分、苦労したけど、何とかできた。うれしいね。
http://fun-sootv.blogspot.jp/2016/06/blog-post.html

こんな感じ。
531    ○○歳    名前    現住陪餐会員    男性    郵便番号    住所    1973/5/31

早速、bdsearch, agcalc という名前で、bash_profile にエイリアスを設定しておいた。

#!/bin/bash
# 実行時に指定された引数の数、つまり変数 $# の値が 2 でなければエラー終了。
if [ $# -ne 2 ]; then
    echo "指定された引数は$#個です。" 1>&2
    echo "実行するには2個の引数が必要です。" 1>&2
    exit 1
fi

# シェル変数を二つ設定する。start_day=検索開始日。end_day=検索終了日。
# nkf で、改行コードを Unix 形式に変える。
# gsed で、1973.5.31 という日付表示を 1973/5/31 という表示形式に変える。
# この段階で一回、ファイルに書き出しておく。何か別の目的に使えるかもしれないので。<= やっぱり、やめた。
# 「0531」などと表現された誕生日のうち、awk で、検索開始日と検索終了日の範囲に該当する者を抜き出す。
# ただし、召天者ははじく。
# sort して、less で表示。
start_day="$1"
end_day="$2"

#now=`date "+%Y%m%d"`
now_Y=`date "+%Y"`
now_m=`date "+%-m"`
now_d=`date "+%-d"`

cat ~/ディレクトリ/asty-ch_member.tab | nkf -Luw | gsed -e 's|\([0-9]{4}\)\.\([0-9]\?\)\.\([0-9]\?\)|\1/\2/\3|g’ |  awk '$9 >= '${start_day}' && $9 <= '${end_day}' && $7 != "召天者" {split($8,my_birthday,"/"); if('${now_m}' < my_birthday[2]){print $9,my_age = ('${now_Y}' - my_birthday[1] - 1 )"歳",$1,$7,$6,$10,$11,$8}
else if('${now_m}' > my_birthday[2]){
   print $9,my_age = ('${now_Y}' - my_birthday[1])"歳",$1,$7,$6,$10,$11,$8}
else if('${now_m}' == my_birthday[2] && '${now_d}' < my_birthday[3]){
   print $9,my_age = ('${now_Y}' - my_birthday[1] - 1 )"歳",$1,$7,$6,$10,$11,$8}
else if('${now_m}' == my_birthday[2] && '${now_d}' >= my_birthday[3]){
   print $9,my_age = ('${now_Y}' - my_birthday[1])"歳",$1,$7,$6,$10,$11,$8}
}' | sort | less

うれしい! でも、疲れた〜

Vim 内で置換。\zs \ze

Vim 内で置換をしました。
覚えたての  \zs  \ze  を使って。

%s/[0-9]\{1,4}\zs\.\ze[0-9]\{1,2}/\//gc
こうすると
2016.6.3
というようなものが
2016/6/3
となります。

sed を使って一括で置換をしたくて、自分なりに何度もトライしてみたのですが、なぜか、置換されずに残るものが出てくるのです。
http://fun-sootv.blogspot.jp/2016/05/2016531.html

正規表現をきちんと書けていないだけなのかもしれないけど、でも、これ以上は自分では分からないなあ、と思いました。コンピュータは難しい・・・。

そこで、Vim 内で置換したというわけです。自分の目で確かめながら。

age_calc, 誕生日から年齢計算するシェルスクリプト

誕生日から年齢計算するシェルスクリプト。

age_calc と名付けました。

#!/bin/bash

# 実行時に指定された引数の数、つまり変数 $# の値が 1 でなければエラー終了。
if [ $# -ne 1 ]; then
    echo "指定された引数は$#個です。" 1>&2
   echo "実行するには2個の引数が必要です。" 1>&2
   exit 1
fi

# 引き数として与えられた「誕生日」が8桁の整数である場合にだけ、年齢計算を行う。
if [[ $1 =~ [0-9]{8} ]];
then
   now=`date +%Y%m%d`
   my_birthday=$1

   echo $(((now-my_birthday)/10000))    # 二重括弧で計算する場合は、変数に$をつけない。
   #echo `expr \( ${now} - ${my_birthday} \) / 10000`    # exprで計算する場合は、+,-などの演算記号の前後にスペースを入れる。
else
echo ‘誕生日は「19730531」という形式で入力してください。'
fi

 

ちなみに、

echo $(((now-my_birthday)/10000))

と、

echo `expr \( ${now} - ${my_birthday} \) / 10000`

は、同じ。

Thursday, June 2, 2016

birthday_search.sh, 誕生日検索。検索開始日と検索終了日の間の期間に該当する「誕生日の方」を抜き出し、表示する

検索開始日と検索終了日の間の期間に該当する「誕生日の方」を抜き出し、表示したい。

 

毎月、「教会カレンダー」を作成し、誕生日の方のお名前を記入している。

そして、「教会カレンダー」を見ながら、その月に誕生日を迎える方に、「誕生日  お祝い葉書」を書いて送るのだ。

 

今までは、FileMaker Pro を立ち上げて、その月の誕生日該当者を検索していた。

それを、シェル芸を使って行いたい。

 

===>    なんとか、できました!    うれしいね!!

 

#!/bin/bash

# 実行時に指定された引数の数、つまり変数 $# の値が 2 でなければエラー終了。
if [ $# -ne 2 ]; then
    echo "指定された引数は$#個です。" 1>&2
    echo "実行するには2個の引数が必要です。" 1>&2
    exit 1
fi

# シェル変数を二つ設定する。start_day=検索開始日。end_day=検索終了日。

# nkf で、改行コードを Unix 形式に変える。
# gsed で、1973.5.31 という日付表示を 1973/5/31 という表示形式に変える。
# この段階で一回、ファイルに書き出しておく。何か別の目的で使えるかもしれないので。

# 「0531」などと表現された誕生日のうち、awk で、検索開始日と検索終了日の範囲に該当する者を抜き出す。
# ただし、召天者ははじく。
# sort して、less で表示。

start_day="$1"
end_day="$2"

cat ~/ファイルのあるディレクトリ/asty-ch_member.tab | nkf -Luw | gsed -e 's|\(....\)\.\(.\?\)\.\(.\?\)|\1/\2/\3|g' > ~/ファイルのあるディレクトリ/asty-ch_bsearch.txt

cat ~/ファイルのあるディレクトリ/asty-ch_bsearch.txt | awk '{if($9 >= '${start_day}' && $9 <= '${end_day}' && $7 != "召天者")print $9,$1,$7,$6,$10,$11,$8}' | sort | less

 

我流だし、まだまだ工夫の余地はあるのだろうけれど、自分なりに書いた、記念すべき「初めてのシェルスクリプト」(もちろん、よく分かっていないところも多々あります・・・) 。

誕生日検索なので、birthday_search.sh と名付けました!

PDF ファイルを、テキストファイルに変換

ターミナルから、PDF ファイルを、テキストファイルに変換したい。

 

これでできるようになった。

pdftotext  "インプットファイル"  "アウトプットファイル"

 

そのためには、macports から poppler をインストールしなければならない。

Wednesday, June 1, 2016

find と xargs で重複している写真を削除

find と xargs で重複している写真を削除。

find . -name "*(1)*" -print0 | xargs -0 rm -rf

 一応、できたようだ。

find 検索。一番、ディスク容量を使っているフォルダを知りたい

Dropbox の残り容量が少なくなってきた。

そこで、一番、ディスク容量を使っているフォルダを知りたい。

find 検索を使ってみよう、と思った。

 

以下のようにコマンド入力してみた。

find . -type d -maxdepth 0 | du -h | sort -rn | less

 

一応、コマンドの結果がターミナルに表示されたけど、でも、なんだか求める結果にたどり着いていないような・・・