이 페이지가 너무 길어지는 바람에... 오래된 것들은 10개 항목씩 끊어서 다시 아래의 archive 페이지로 옮깁니다.
목차:
-
- 1. ip 막기
-
- 2. intermap 파일에 주석 허용
-
1. ip 막기
UseMod 1.0을 보면 UserIsBanned와 DoEditBanned에 문제가 있어서 수정되었습니다. 보고 적용해주시기 바랍니다.
- UserIsBanned 에서 딱 한 줄 추가되었고 DoEditBanned 에서는 사용법 설명하는 문구가 바뀐 정도로군요. UpdateBanned 는 바뀐 게 없고... 이것만 고치면 되는 건가요? 따라가다보면 GetRemoteHost 도 바뀌긴 했네요.
- 사실 저도 IP ban은 쓰질 않고 있어서, 고치면 잘 동작하는건지 모르겠습니다. 대신 좀 고쳐서 금지단어 기능을 넣어봤으니 그 쪽이 제대로 되는지 확인해주세요. 주절주절에 자꾸 스팸 게시물이 올라와서요.
- 지금은 시간이 없으니 주말쯤에 봐서 적용하도록 하겠습니다. 생각난김에, 매크로처럼 액션들도 별도의 파일들로 분리하게 할까 합니다. 그나저나 주절주절의 스팸은 직접 붙여넣기 해서 쓰는 것 같더군요. 조프위키의 인기가 높다는 뜻이겠죠 :-)
일단 위 두 함수는 1.0의 코드로 고쳐놨습니다.
2. intermap 파일에 주석 허용
intermap 파일에 주석을 달 수 있게 했으면 좋겠는데, 아무래도 주석은 "#"으로 시작하는 게 좋겠죠. 근데 위키에서 intermap 파일을 처리하는 과정상, 주석을 제거한 후에 빈 줄 같은게 없어야 합니다.
# 줄의 처음부터 #으로 시작하는 주석
aaaaa AAAAAAAAAAAAAAAAAAAAAAA
# 앞에 공백이 있어도 허용
bbbb BBBBBBBBBBBBBBBBBB
ccccccc CCCCCCCCCCCCCCC # 이렇게 내용이 있는 줄 뒷부분에 달린 주석
위와 같은 경우, 주석을 제거하고 나면
aaaaa AAAAAAAAAAAAAAAAAAAAAAA
bbbb BBBBBBBBBBBBBBBBBB
ccccccc CCCCCCCCCCCCCCC
이렇게 빈 줄이 없어야 합니다.
제가 현재 작성한 치환은 아래와 같습니다.
$data =~ s/^\s+//gm;
$data =~ s/\s+$//gm;
$data =~ s/^#.*$//gm;
$data =~ s/\s+#.*$//gm;
$data =~ s/(\r?\n)+/\n/gs;
$data =~ s/^\r?\n//gs;
보다시피 여섯번을 치환을 해야 하니.. 아무리 봐도 맘에 들지 않습니다. 좀 더 효과적인 방법이 없을까요?
동일한 질문을 올린 곳:
반영되었음.
위키위키분류