Page 9 of 11

Previous page

Twitter via tweet button

ボタンを押してツイートするだけの用途です。

事前に書きたいことをメモしたい時もあるので、textarea をボタン下に配置しています。

data-text="xxx" でボタン押下後のデフォルトメッセージを設定しておけます。

data-hashtag="xxx" で同じくボタン押下後のデフォルトハッシュタグを設定しておけます。

tweet_button.html

<!DOCTYPE html>
<html>
<head>
<title>tweet_button</title>
</head>
<body>
<a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-text="write here" data-hashtags="now_working">tweet</a>
<br><textarea cols=40 rows=5></textarea>
<script>
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
</script>
</body>
</html>

Published at December 04, 2013.

[Esc, C-[, C-C 対応版] Terminal Vimで Insert モードを抜ける時に英数入力に切り替える方法

Mac の場合です。

解決方法

KeyRemap4MacBook を使えば可能。

  • ESC と Ctrl+C と Ctrl+[ に対応させる設定

private.xml

<?xml version="1.0"?>
<root>
  <list>
    <item>
      <name>LeaveInsMode with EISUU(Terminal)</name>
      <identifier>private.app_terminal_esc_with_eisuu</identifier>
      <only>TERMINAL</only>
      <autogen>--KeyToKey-- KeyCode::ESCAPE, KeyCode::ESCAPE, KeyCode::JIS_EISUU</autogen>
      <autogen>--KeyToKey-- KeyCode::BRACKET_LEFT, VK_CONTROL, KeyCode::BRACKET_LEFT, VK_CONTROL, KeyCode::JIS_EISUU</autogen>
      <autogen>--KeyToKey-- KeyCode::C, VK_CONTROL, KeyCode::C, VK_CONTROL, KeyCode::JIS_EISUU</autogen>
    </item>
  </list>
</root>

あとは ReloadXML して checkbox ON して有効にましょう。そしたらOK。


Published at December 03, 2013.

strtok()

strtok() が static なデータを保持するから、

どこか他で、意図せずstrtok()してることに気づかなかったら痛い想いする。

char *p;
p = strtok("aaa,bbb,ccc", ",");
printf("%s\n", p); /* aaa */
p = strtok(NULL, ",");
printf("%s\n", p); /* bbb */
p = strtok(NULL, ",");
printf("%s\n", p); /* ccc */

Published at September 07, 2013.


IE の不思議 その1 getElementsByName

なぜ IE だけこんな挙動なのか? getElementsByName() で、IE だけ拾えてないのなんでだろうと思っていたら、name で拾ってくるらしい。 だからこれはダメ

<input type="file" name="idfile" multiple>

これなら大丈夫

<input type="file" id="idfile" name="idfile" multiple>

javascript も同様

var newFile = document.createElement("input");
newFile.type = "file";
newFile.setAttribute("name", "idfile");
newFile.setAttribute("id", "idfile");
newFile.setAttribute("multiple");
var div = document.getElementById('iddiv');
div.appendChild(newFile);

Published at August 16, 2013.

Java で input type="file" アップロード

input type="file" のファイルをアップロードする時、java だと org.apache.commons.fileupload.servlet.ServletFileUpload とか使うと思います。

以下の具合に、 getName() の取得結果が IE だけ違ったので少し悲しくなりました。

  • chrome, firefox はファイル名だけ取得
  • IE はフルパス取得

ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(-1);
List<?> items = upload.parseRequest(request);
for (Object val : items) {
  FileItem item = (FileItem) val;

  // IE だけフルパスで取れるんだけど、、、
  // chrome, firefox はファイル名のみ
  String fileName = item.getName();

  if (!item.isFormField()) {
    if ((fileName != null) && (!fileName.equals(""))) {

      // IE の場合 ファイル名だけ抜き出すなど
      Integer ie = fileName.lastIndexOf("\\");
      if (ie > 0) {
        fileName = fileName.substring(ie);
      }

      item.write(new File(upDir + "/" + fileName));
    }
  }
}

Published at August 16, 2013.

Jenkinsを導入しよう

Jenkins導入に億劫になっている人は、導入だけならすごく簡単にできるので、10分の時間を確保して、以下を行うべし。

Mac環境での説明です。

  • インストールする

    brew install jenkins

  • とりあえず動かしたいよね

    java -jar /usr/local/opt/jenkins/libexec/jenkins.war

http://localhost:8080/ にアクセスしましょう。

  • 簡単に使ってみましょう。

New Job から Job name を入力し、Build a free-style software project を選択して OKします。

Add build step から、 Execute shell を選択して、echo "test!!!" とか入力して save します。

Dashboard から、作成されたプロジェクトを選択して、 Build Now してみましょう。

結果は Build History から確認できます。

Console Output から、出力を確認することが出来ましたね!!!

プロジェクトの削除は、プロジェクトを選択して Delete Project で消えます。


Published at August 04, 2013.


VPS(CentOS6.4) に nginx1.4.2 をいれた時のメモ

sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-60.el6.ngx.noarch.rpm

/etc/yum.repos.d/nginx.repo

[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/6/$basearch/ gpgcheck=0 enabled=1

sudo yum install nginx
sudo service nginx start

http://vps/ とかで確認。

/usr/share/nginx/html/index.html が表示されるはず。


Published at July 19, 2013.

setting of Sakura VPS

さくらのVPSでの初期設定

yum update

必要なら root の password 変更

passwd

useradd username

passwd username

usermod -G wheel username

vi /etc/pam.d/su

uncomment

auth required pam_wheel.so use_uid

visudo

無い場合は入れる。 yum install sudo

uncomment

%wheel ALL=(ALL) ALL

こっちも uncomment すると pass 入れる必要なくなる。

%wheel ALL=(ALL) NOPASSWD: ALL

re-login as added user

vi ~/.bash_profile

zsh なら .zshrc とかに書く。

PATH=$PATH:$HOME/bin

add the following

PATH=$PATH:/sbin

PATH=$PATH:/usr/sbin

PATH=$PATH:/usr/local/sbin

聞かれる filename pass

ssh-keygen -t rsa -C "your mail address"

そういえば hosts でも書いておく

xxx.xxx.xxx.xxx vps

sftp username@vps

put id_rsa.pub

mkdir ~/.ssh

cd ~/.ssh

authorized_keys

cat ~/id_rsa.pub » ~/.ssh/authorized_keys

rm ~/id_rsa.pub

chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

sudo vi /etc/ssh/sshd_config

uncomment

PermitEmptyPasswords no

RhostsRSAAuthentication no

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication yes

PasswordAuthentication no

Port 22

Port 10022

sudo /etc/init.d/sshd restart

ssh vps -i ~/.ssh/id_rsa -lusername -p10022


Published at July 13, 2013.

Next page