Mercurial > hg > Members > anatofuz > anatofuz-tools
annotate hg-browse @ 9:2711ab9baa52 default tip
use core module only
author | anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 04 Jan 2021 11:00:54 +0900 |
parents | 38241ae31798 |
children |
rev | line source |
---|---|
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 #!/usr/bin/env perl |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 use strict; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 use warnings; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 # hg config経由でhgrcにかかれているpush先を確認する |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
6 my $push_path = `hg config paths.default`; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
8 if ($?){ |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
9 print "[eror] failed exec hg config paths.default"; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 exit 1; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 } |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 |
8 | 13 my $open_cmd = $^O eq 'darwin' ? "open" : "xdg-open"; #linux open cmd is xdg-open |
14 | |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 # 無かったら特に何もしない |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
16 exit 1 unless ($push_path); |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
17 |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 # yomitanはパスで開けないので別枠 |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
20 my $url; |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
21 |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
22 if ($push_path =~ /(yomitan)|(chatan)/){ |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
23 $url = yomitan($push_path); |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
24 } elsif ($push_path =~ /firefly/){ |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
25 $url = firefly($push_path); |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
26 } else { |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
27 if ( $push_path =~ m[(https?|ssh)://(\w+@)?(.*)]){ |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
28 $url = "http://$3"; |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
29 } |
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
30 die 'invalid url'; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
31 } |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
32 |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
33 `$open_cmd $url`; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
34 |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
35 |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
36 sub yomitan { |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
37 my $input = shift; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
38 my $http_domain = 'https://ie.u-ryukyu.ac.jp/hg/'; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
39 my $url; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
40 |
1
85f5eada6707
fix regex for yomitan
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
41 if ($input =~ m[.*//home/hg/y(\d+)(.+)]){ |
7 | 42 $url = $http_domain . "y$1$2"; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
43 } |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
44 return $url; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
45 } |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
46 |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
47 sub firefly { |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
48 my $input = shift; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
49 my $http_domain = 'http://www.cr.ie.u-ryukyu.ac.jp/'; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
50 my $url; |
3 | 51 if (($input =~ m[.*?firefly.cr.ie.u-ryukyu.ac.jp/(.*)] )||($input =~ m[.*firefly/(.*)])){ |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
52 $url = $http_domain.$1; |
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
53 } |
9
2711ab9baa52
use core module only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
8
diff
changeset
|
54 return $url; |
0
78df974566a7
initial commit
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
55 } |