タグ

ブックマーク / rcmdnk.com (54)

  • 日本語含めてソートしたときに最初と最後に来る文字

    B! 6 0 0 0 何か保存してあるものを見るときに、ファイル名とかでソートされて表示されたときに 日語があるとどのようなものが最初と最後に来るか問題。 順序を上手く制御したい 最初と最後に置く 漢字の文字コード 記号を含めると どの文字を使えばよいか? 順序を上手く制御したい GmailのラベルとかEvernoteとかでノートブックを作っていく際、ノートブック名を適当につけていくと 表示順の変更が出来ないので、aとかあとかの文字が最初にあればそれが上の方に来ます。 ただ、自分的な優先度はその通りにはなってないことが多いのでなんとかしたいと思います。 そんな時は、 0_重要 1_Todo 2_仕事 3_買い物 とか、最初に数字を付けておくと良い感じに制御できます。(もっと多い場合は123_とか桁数を増やして) 最初と最後に置く ただ、そこまでしなくても、要らなくなったら一番下に、欲しい

    日本語含めてソートしたときに最初と最後に来る文字
    peketamin
    peketamin 2022/04/20
    “熙”
  • バージョン番号のソート

    B! 81 0 0 0 v8.10.1みたいなバージョン番号をソートしようとするとき、 単にsortコマンドとか使うとv8.2.1とv8.10.1で真ん中の2と10の1だけを 見て思ったのと逆にソートされてしまいます。 かといって単純に-nで数字として全体を見ることもできないのでちょっと工夫が必要です。 sortコマンド 区切ってソート sort -V git tagでの表示 sortコマンド v1.2.1 v1.10.1 v2.2.1 v2.2.2 v2.2.10 v10.2.1 みたいな内容のversions.txtというフィアルの中身をソートしたいとき、 期待するのは上の形になることです。 これをそのままsortコマンドとかに入れると $ sort versions.txt v1.10.1 v1.2.1 v10.2.1 v2.2.1 v2.2.10 v2.2.2 となります。 このま

    バージョン番号のソート
    peketamin
    peketamin 2020/09/28
  • sort/lsコマンド出力での記号文字の順番のLC_ALL等への依存

    B! 5 0 0 0 ある端末で使っていたlsやsortを使ったスクリプトを 他の端末で動かしたらどうも思ったとおりの結果にならなくて、 調べた結果LC_ALL等の設定が違っていてソート結果が違ってしまったようでした。 問題が起こりやすいケース ロケールによる違い ロケール設定 Mac (BSD)では 問題が起こりやすいケース 問題がよく起こるのはファイル名を付けるとき、 最初のファイルには数字など付けずに、 2つ目以降には_1.txt等、アンダーバーを付けて数字を付けるケース。 aaa.txt aaa_1.txt aaa_2.txt ... みたいな。 自分で気をつけていてもソフトによってこの様なファアイル名の付け方を 勝手にするものもあるのでファイルとして持ってることはあると思います。 ロケールによる違い lsやsortコマンド等で一覧をソートする場合、 環境設定によって順序が変わって

    sort/lsコマンド出力での記号文字の順番のLC_ALL等への依存
    peketamin
    peketamin 2020/01/27
    “** WARNING ** The locale specified by the environment affects sort order. Set LC_ALL=C to get the traditional sort order that uses native byte values.”
  • GitHubで公開されてるipynbファイルをGoogle Colaboratoryで開くブックマークレット

    B! 36 0 0 0 GitHubで公開されているJupyter Notebookのファイルは ファイルのURLをちょっと変えるだけで直接Google Colaboratoryで開くことができます。 そのちょっと変えることをやるブックマークレットを用意しました。 Bookmarklet for GitHub to Colaboratory Bookmarklet for GitHub to Colaboratory 以下のリンクをブラウザのブックマークツールバーなどに持っていって ブックマークレット化してください。 GitHub to Colaboratory それで例えば最近公開された 東京大学の松尾研究室のDL4USのノート https://github.com/matsuolab-edu/dl4us/blob/master/lesson0/lesson0_exercise.ipyn

    GitHubで公開されてるipynbファイルをGoogle Colaboratoryで開くブックマークレット
    peketamin
    peketamin 2019/05/26
  • 多段sshでGitを使う

    B! 46 0 1 0 外部から直接アクセスできないサーバーなどに 踏み台サーバーを通して一発でsshを行う設定がありますが、 Gitのsshを使ったアクセスについても同じようなことが出来ます。 sshを使ったGitアクセス 多段ssh ssh -Wオプションは使えない? まとめ sshを使ったGitアクセス Gitではコマンドラインからサーバーにいくつかの方法でアクセスすることが出来ますが、 認証を要する接続では鍵認証を使ったsshの接続が一番良く使われています。 ~/.ssh/git_rsaの様な鍵を用意しておいて、 同時に作ったgit_rsa.pubをサーバー側に登録し 以下の様な設定を~/.ssh/configに加えます。 ~/.ssh/config 1 2 3 4 Host github.com HostName github.com User git IdentityFile

    多段sshでGitを使う
    peketamin
    peketamin 2018/11/18
  • CentOS 7などのSystemdに対応したデーモンプログラムを作る

    B! 82 0 0 0 RHEL 7系のCentOS 7などではそれまでRHEL 6系で使われていたSystem V系のinitから Systemdを用いたデーモン管理がベースになるようになりました。 CentOS 7でデーモンを自作したいものがあって作ったので 基的な作り方についてまとめておきたいと思います。 Systemd (systemctl) デーモン体作成 最小限の設定 サービスファイル rsyslogの設定ファイル logrotate インストール/アンインストールスクリプト 動作チェック まとめ Systemd (systemctl) initのときには/etc/init.d/の中にデーモン名の(通常)シェルスクリプトが入っていて、 このスクリプトがstartとかstopとかの引数を受ける様に作られ、 直接 # /etc/init.d/httpd start とかするか、

    CentOS 7などのSystemdに対応したデーモンプログラムを作る
    peketamin
    peketamin 2018/09/14
  • Homebrewでインストールされる/usr/local/bin/pythonが再びPython2に変更

    B! 200 0 68 0 先日Homebrewのパッケージの改変が行われ、pythonというFormulaはPython3をインストールするようになり、 /usr/local/bin/pythonpython3へのリンクになっていました。 これがまた変更され、 /usr/local/bin/pythonpython2へのリンクに戻されました。 python2 to python3 PEP 394 – The “python” Command on Unix-Like Systems 現在の状況 python3をpythonで呼びたい場合 Homebrewチームの暴走感 python2 to python3 1.5.0 — Homebrew 以前から予告されていたこととして、3月に入った時に Homebrewのpython Formulaがpython3をインストールするようになりまし

    Homebrewでインストールされる/usr/local/bin/pythonが再びPython2に変更
    peketamin
    peketamin 2018/03/11
  • Mac HomebrewでMacTex/Ghostscriptを導入する際の注意

    B! 6 0 0 0 Macでepsファイルを使うことがあるのですが、 久しぶりにimagemagickのconvertコマンド使って pdfファイルに変更しようとしたらエラーが出ました。 ちょっと調べてみるとGhostscriptのバージョンが変な事になってるのが問題でした。 Ghostscriptに関する問題 HomebrewのGhostscriptとMacTexによるGhostscript Macのeps表示問題 まとめ Ghostscriptに関する問題 convertコマンドを使ってみると、 $ convert hoge.eps hoge.pdf GPL Ghostscript 9.19: Can't find initialization file gs_init.ps. GPL Ghostscript 9.19: Can't find initialization file

    Mac HomebrewでMacTex/Ghostscriptを導入する際の注意
    peketamin
    peketamin 2018/02/02
  • Vimのlightlineでのステータスライン表示の調整

    B! 17 0 0 0 lightlineVimのステータスライン表示をリッチにしてくれる プラグインです。 色々な情報を自分の好きな様に表示できますが、 画面が狭くなったりした時に必要な情報から表示するように、 と言ったことをするためにちょっと工夫したことについて。 lightline 画面幅によって表示させる項目を変える lightline Vimでステータスライン表示を変更するプラグインは powerlinevim-airline などいくつかありますが、 lightline はそれらを踏まえた上で出てきた比較的新しいプラグインで 他のに比べて動作も軽快なので使っています。 Vimプラグインlightline導入 画面幅によって表示させる項目を変える 上の導入時にも画面幅によって項目を変更することはやっていましたが、 この時は関数の呼ばれる順番とかを余り考えていませんでした。

    Vimのlightlineでのステータスライン表示の調整
    peketamin
    peketamin 2017/09/25
  • Read the Docs(Sphinx)でオープンソースのドキュメントをいい感じに書いてみる

    B! 139 0 0 0 最近良くGitHubなんかで公開されてるオープンソースのドキュメントを見ようとすると こんな感じの似たようなフォーマットで書かれているものが多くなっています。 余りに多いので最初GitHubのサービスかな、とか思ったんですが、 これはまた別のRead the Docsという ドキュメント用ホスティングサービスによるものでした。 Read the Docs Read the Docsでドキュメントを公開してみる Sphinxのインストール レポジトリ側の準備 Read the Docsへの登録 ページを作成 Indexページ ページ内容の編集(Markdown to reStructuredText) タイトル ハイパーリンク 画像 リンク付き画像 インラインマークアップ コードブロック リスト テーブル Pythonのモジュール説明 その他reStructured

    Read the Docs(Sphinx)でオープンソースのドキュメントをいい感じに書いてみる
    peketamin
    peketamin 2016/05/02
  • HomebrewがAnalyticsを導入し使用OS等の情報を集める様になった

    B! 196 0 0 0 MacのHomebrewでbrew updateをした際に気づいた人も居るかと思いますが、 HomebrewではGoogle Analyticsを使って Userの使用しているOSや使われてるFormula等の情報を集める事を開始しました。 Homebrew’s Anonymous Aggregate User Behaviour Analytics ユーザーの反応 まとめ Homebrew’s Anonymous Aggregate User Behaviour Analytics 最近brew updateをした際、 $ brew update ==> Homebrew has enabled anonymous aggregate user behaviour analytics Read the analytics documentation (and h

    HomebrewがAnalyticsを導入し使用OS等の情報を集める様になった
    peketamin
    peketamin 2016/04/30
  • sedで改行を出力する

    B! 34 0 0 0 sedを使って文字列を変換する際、 Mac等BSD系sedだと変換後に改行を出すのが一筋縄ではいかない、と言う話。 GNU sedでの改行変換 BSD sedでの改行出力 BSD sedでのスマートな改行出力 おまけ おまけ2 GNU sedでの改行変換 環境: Linux Bash 4.2.37 GNU sed version 4.2.1 GNU sedでは改行の出力は\nを指定してあげるだけで出来ます。 $ echo "aaa\nbbb"|sed "s/\\\\n/\n/" aaa bbb 入力の方の\nを実際の改行文字に変えたいような場合、 出力側に\nを指定してあげれば良いだけです 1。 BSD sedでの改行出力 環境: Mac Bash 4.3.24 BSD sed (May 10, 2005, バージョンの見方が分からない。。。) 同じコマンドを打って

    sedで改行を出力する
    peketamin
    peketamin 2016/04/15
  • PowerShellをちょっと使ってみての感想

    B! 189 0 0 0 Windows 10ではPackageManagementというツールによって アプリの管理等がPowerShellからコマンドベースで出来る様になってるので、 Macで Homebrew+ Brew-file 的な感じでやってる設定管理の様なものが出来ないかということで、 取り敢えずPowerShellで出来ないかな、と思いちょっとPowerShellを勉強中。 PowerShellを使ってみて ExecutionPlicyの設定 スタイルガイド的な bashrc的な個人設定ファイル 変数 配列、ハッシュ(辞書) 配列を""内で使う時は注意 大文字小文字の区別 コマンドヘルプの見方 Write-Output (echo)の罠 関数の引数 HOME foreachとForEach-Object コマンドを複数行に分ける if ($a -eq “aaa”) retu

    PowerShellをちょっと使ってみての感想
    peketamin
    peketamin 2016/03/17
  • NeoBundleからDein.vimへの移行

    B! 103 0 0 0 NeoBundle はVimのプラグインマネージャーですが、 少し前に開発者の方から「NeoBundleの開発は終わり、これからは Dein.vimを使ってね。」 と言ったアナウンスがあったので .vimrcの整理を兼ねてプラグインマネージャーの変更を行いました。 Dein.vim的な設定等 TOML化 速くなったか? トラブルシューティング NeoVim? Dein.vim dein is the dark powered Vim package manager. It is created from full scratch. Concepts are: Faster than NeoBundle Simple No commands, Functions only Easy to test and maintain No Vundle/NeoBundl

    NeoBundleからDein.vimへの移行
    peketamin
    peketamin 2016/03/10
  • Vimのdiffモード関連Tips

    B! 258 0 0 0 Vimのdiffモード機能はVimを使うべき一つの大きな理由になるくらい便利なものだと思います。 違いを見るためだけでも左右に並べて見れるので diffコマンドなんかよりもよりわかりやすく見ることが出来ます。 そのdiffモード関連のVimの機能やプラグイン等のまとめ。 vim -d vimdiff :diffsplit diffモードでの操作 diffモードの設定 :DiffOrig linediff.vim vcscommand.vim diffchar.vim vim-diff-enhanced vim -d 2つの似たようなファイルを比べたい時に $ vim -d a.txt b.txt とすると2つを比べた状態でファイルを開くことが出来ます。 3つ以上同時に比較することも可能です。 diffモードでは以下のオプションがセットされます。 diff: on,

    Vimのdiffモード関連Tips
    peketamin
    peketamin 2016/02/29
  • 英文法チェックソフトのまとめ

    B! 84 0 12 0 ちょっと前に Grammarly という英文法チェックソフトがSafari/Firefox/Chromeで 無料で使えるようになったよ!というメールが来てて ちょっと気になったのでついでに他の英文法ソフトを 含めて色々チェックしてみました。 Grammarly Ginger 1Checker PaperRater GrammerCheck, GrammerChecker.me SpellCheckPlus Reverso After the Deadline 有料版いくつか Microsoft Wordの文章校閲 Vim & LanguageTool 比較してみる まとめ Grammarly Grammarly は英文法チェックソフト、 と言うより英語の文章を色々チェックしてくれるソフトです。 英文法、スペルチェックに加え、 文章の言い回しの公正もしてくれます。

    英文法チェックソフトのまとめ
    peketamin
    peketamin 2016/02/22
  • OS X El Capitanでは'uninstall'コマンドが無くなった?

    B! 21 0 0 0 以前、 Homebrew-fileでApp Storeのアプリの情報も残せる様にした という話の中で OS Xではuninstallというコマンドがあって、 これを使うとApp Storeからインストールしたアプリも 綺麗に消せる、と言う事を書きました。 それで今ちょっと試してみたらこのコマンドが無かったので。 OS X El Capitanでのアプリのアンインストール 設定ファイルなども消してい場合 Brew-fileでのApp Storeアプリの取り扱い OS X El Capitanでのアプリのアンインストール OS Xではアプリのアンインストールは基的に そのアプリを直接削除する、と言った方法で行いますが、 App Storeからインストールしたアプリを直接削除すると App Storeの情報がアップデートされず、 再びインストールしようとしてもApp S

    OS X El Capitanでは'uninstall'コマンドが無くなった?
    peketamin
    peketamin 2016/02/14
  • Pythonでcallbackに引数を使う方法と注意点

    B! 20 0 0 0 Pythonでcallbackを使う時に引数を取り扱う方法について。 Pythonでcallback callbackに引数を渡す callbackへ渡す引数に変数を使う時の注意 Pythonでcallback Pythonでcallbackを使う方法として最も簡単な形としては以下の様な感じ。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 >>> class CallbackExecutor(): ... ... def __init__(self, callback): ... self.callback = callback ... ... def execute(self): ... self.callback('execute') ... ... def echo(v): ... print 'echo: %s' % v ... >>>

    Pythonでcallbackに引数を使う方法と注意点
    peketamin
    peketamin 2015/12/04
  • シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting

    B! 26 0 0 0 trashコマンドを拡張 している時に、選択画面で上下するときにVimみたくCtrl-F で1画面進む、みたいなことしたいな、と思って Controlキーを含んだ入力をreadで読み取って扱う方法を取り入れたのでそのメモ。 入力キー1つを受け取る Controlと同時押しのキーを受け取る Tips 8進数または16進数で書くときの注意 Ctrl-Cを使いたい場合 水平タブ(Ctrl-I)等を使いたい場合 使えない文字 ESCを判断する まとめ 入力キー1つを受け取る 入力キーを1つ受け取るにはBashでは read -s -n 1 c Zshでは read -s -k 1 c とします。 スクリプトがこの時点まで進んだ時に入力待ちになって、 何か1つでもキーを押すと、そのキーがcに入ります。 必要なら直前に echo -n "input: " とでも出しておけばわか

    シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting
    peketamin
    peketamin 2015/12/01
  • VimのNeoBundleでgitプロトコルの使用が廃止になった

    B! 30 0 0 0 Vimのプラグイン管理のプラグインであるNeoBundle をアップデートしたら 大量のエラーが出てきてちょっとびっくり。 gitプロトコルの使用廃止 gitプロトコルの使用廃止 Fix the documentation · Shougo/neobundle.vim@d86d98a このドキュメントのアップデートにあるように、 プラグインをGitHubのレポジトリ等からGitを使って取得するとき、 gitプロトコルを使うことができなくなりました。 GitHubのデフォルトプロトコルがhttpsなので以前から そちらがNeoBundleでもデフォルトになってましたが、 今回から完全にgitを使えなくなった形です。 このプロトコルは g:neobundle#types#git#default_protocol という値で変更することが出来、 これまではこれを let

    VimのNeoBundleでgitプロトコルの使用が廃止になった
    peketamin
    peketamin 2015/11/16