Linuxにtreeをインストールする方法

December 8,2016 12:33 AM
Category:[Linux]
Tag:[Linux]
Permalink

Linuxにtreeをインストールする方法を紹介します。

1.はじめに

treeはディレクトリ配下のファイルやディレクトリをツリー状に表示してくれるコマンドです。

が、先日インスト―ルしたCentOSにはtreeが入っていません。

ということで、Linuxにtreeをインストールする方法を紹介します。

2.treeをインストールする

yumが使える環境であれば、

# yum install tree

でインストールできます。

yumが使えない場合、インストールパッケージは下記にあります。

http://rpm.pbone.net/index.php3?stat=3&search=tree&srodzaj=3

にあります。

正常にダウンロードできない場合は、リンクの「ftp://」を「http://」に書き換えて実行してみてください。

ダウンロードしたパッケージを任意のディレクトリにアップロードして、rpmコマンドを実行すればインストールできます。

# rpm -ivh tree-1.6.0-10.el7.x86_64.rpm
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:tree-1.6.0-10.el7                ################################# [100%]

3.罫線が文字化けする場合の対処

インストール後、実行してみましたが、下記のように罫線が文字化けする事象に遭遇。

# tree
tqq hoge
x?? mqq test
x??     tqq aaa.h
x??     tqq aaa.cc

対処方法として、treeコマンドに「--charset=C」を付与します。

# tree --charset=C
|-- hoge
|   `-- test
|       |-- aaa.h
|       |-- aaa.cc
Comments [0] | Trackbacks [0]

MTテンプレートタグのブラケットを書き換える「MTTagBracketChangerプラグイン」

December 4,2016 12:55 AM
Category:[テンプレートタグ]
Tag:[MovableType, MTTagBracketChanger, Plugin]
Permalink

MTテンプレートタグのブラケットを書き換える「MTTagBracketChangerプラグイン」を公開します。

これは Movable Type Advent Calendar 2016 4日目の記事です。

1.はじめに

Movable Typeのテンプレートタグは、

<mt:Entries>
  <mt:EntryTitle>
</mt:Entries>

という風に、各タグの前後は"<"と">"、いわゆるブラケット(厳密にはアングルブラケット)で括るようになっています。

このブラケットを「別の文字に書き換えられないだろうか?」というくだらないことを、MTを始めた頃に考えたりしたのですが、当時はPerlもろくに読めずに挫折しました。

それから年月も経ってふとそのことを思い出し、今回作ってみました。

何の役にも立ちませんが、

[mt:Entries]
  [mt:EntryTitle]
[/mt:Entries]

などのフォーマットで動作するので、5分くらいは楽しめると思います。

下記のようなフォーマットもできそうですが面倒なのでやめました。

<?php mt:Entries?>
  <?php mt:EntryTitle?>
<?php /mt:Entries?>

2.プラグインのダウンロード・インストール

下記のリンクをクリックして、MTTagBracketChangerのプラグインアーカイブをダウンロードします。

MTTagBracketChanger_0_01.zip

プラグインアーカイブを展開し、pluginsフォルダにあるMTTagBracketChangerフォルダをMovable Typeのアプリケーションディレクトリのpluginsディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で「MTTagBracketChanger~」が表示されればインストール完了です。

プラグイン設定画面

3.使い方

システム管理画面のプラグイン設定画面で「MTTagBracketChanger~」→「設定」をクリックし、「開始文字」と「終了文字」を設定します。デフォルト状態は何も設定されていません。

設定後、テンプレートタグのブラケットを書き換えてみてください。正規表現で使われる文字を設定する場合は必ずエスケープしてください。

プラグイン設定画面

4.注意事項

全ての動作を確認していないので不具合がありましたらご了承ください。

また、プラグインはテンプレートタグ処理のメイン部分に手をいれているため、設定した文字によっては管理画面(=テンプレートタグを使っている)が正常に表示されなくなる可能性があります。

管理画面が正常に表示されなくなった場合、プラグインを削除すれば元に戻ります。

Comments [0] | Trackbacks [0]

C/C++で「incompatible implicit declaration of built-in function」という警告の対処

November 29,2016 1:11 AM
Category:[C/C++]
Tag:[C/C++]
Permalink

C/C++で「incompatible implicit declaration of built-in function」という警告の対処について紹介します。

1.問題点

次のプログラム(sample.c)を書きました。

int main(void) {
    int c = 100;
    printf("%d\n", c);
    return 0;
}

このプログラムをコンパイルしたところ、次の警告が表示されました。

[foo@hoge ~]$ gcc -o sample.c                                                                    
sample.c: In function 'main':
sample.c:3: 警告: incompatible implicit declaration of built-in function 'printf'

警告は「ビルトイン関数strcpyの互換性のない暗黙の宣言」という意味になります。

ネットで調べたとところ、「事前に宣言されていない関数を使用すると、(コンパイラで)関数の暗黙の宣言が行われる。ただし暗黙の宣言が組み込みの関数と互換性がない場合、警告が表示される」ということらしいです。

2.原因

原因は、printf()を使っていてstdio.hをインクルードしていないためです。

その他、strcpy()を使っていてstring.hをインクルードしていない場合など、同様の警告が発生します。

3.対処

下記の1行を追加すれば解消します。

#include <stdio.h>

4.参考サイト

参考サイトは下記です。ありがとうございました。

Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages