Skip to content

Commit

Permalink
Switch to Ruff
Browse files Browse the repository at this point in the history
  • Loading branch information
SkyEye-FAST committed Feb 10, 2025
1 parent 3f053af commit 112d709
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 54 deletions.
23 changes: 0 additions & 23 deletions .github/workflows/pylint.yml

This file was deleted.

18 changes: 18 additions & 0 deletions .github/workflows/ruff.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Ruff

on: [push, pull_request]

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.12"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Ruff Lint and Format
uses: adityabhangle658/ruff-python-lint-format-check-pr@v1
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Minecraft难视语言资源包

[![Update resource pack](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/update.yml/badge.svg)](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/update.yml) [![Pylint](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/pylint.yml/badge.svg)](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/pylint.yml)
[![Update resource pack](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/update.yml/badge.svg)](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/update.yml) [![Ruff Lint and Format](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/ruff.yml/badge.svg)](https://github.com/SkyEye-FAST/unreadable_language_pack/actions/workflows/ruff.yml)

- **[English](README_en.md) | [中文](README.md)**

Expand Down
45 changes: 22 additions & 23 deletions converter.py
Original file line number Diff line number Diff line change
@@ -1,27 +1,26 @@
# -*- encoding: utf-8 -*-
"""难视语言转换器"""

import re
import time
from typing import List, Set, Tuple, Callable, Optional
from typing import Callable, Optional

from romajitable import to_kana as tk
from pypinyin import Style, lazy_pinyin, load_phrases_dict
from pypinyin_dict.phrase_pinyin_data import cc_cedict, di
import jieba
from opencc import OpenCC
from pypinyin import Style, lazy_pinyin, load_phrases_dict
from pypinyin_dict.phrase_pinyin_data import cc_cedict, di
from romajitable import to_kana as tk

from base import (
P,
Ldata,
load_json,
PINYIN_FINALS,
PINYIN_TO,
gr_values,
cy_values,
TONE_TO_IPA,
PINYIN_FINALS,
rep_zh,
Ldata,
P,
cy_values,
gr_values,
load_json,
rep_ja_kk,
rep_zh,
)

# 初始化OpenCC
Expand Down Expand Up @@ -145,15 +144,15 @@ def capitalize_titles(self, text: str) -> str:
text,
)

def add_apostrophes(self, input_list: List[str], values: Set[str]) -> List[str]:
def add_apostrophes(self, input_list: list[str], values: set[str]) -> list[str]:
"""处理隔音符号。
Args:
input_list (List[str]): 需要转换的字符串
values (Set[str]: 有效的拼写
input_list (list[str]): 需要转换的字符串
values (set[str]: 有效的拼写
Returns:
List[str]: 处理结果
list[str]: 处理结果
"""
for i in range(1, len(input_list)):
for j in range(len(input_list[i - 1])):
Expand All @@ -170,7 +169,7 @@ def convert(
func: Callable[[str], str],
fix_dict: Optional[Ldata] = None,
rep: Optional[Ldata] = None,
) -> Tuple[Ldata, float]:
) -> tuple[Ldata, float]:
"""转换语言数据。
Args:
Expand All @@ -179,7 +178,7 @@ def convert(
rep (Optional[Dict[str, str]], optional): 替换格式字典
Returns:
Tuple[Dict[str, str], float): (转换结果字典,耗时秒数)
tuple[Dict[str, str], float): (转换结果字典,耗时秒数)
Raises:
ConversionError: 转换过程出错
Expand Down Expand Up @@ -290,7 +289,7 @@ def convert(
func: Callable[[str], str],
fix_dict: Optional[Ldata] = None,
rep: Optional[Ldata] = None,
) -> Tuple[Ldata, float]:
) -> tuple[Ldata, float]:
"""转换语言数据。
Args:
Expand All @@ -299,7 +298,7 @@ def convert(
rep (Optional[Dict[str, str]], optional): 替换格式字典
Returns:
Tuple[Dict[str, str], float): (转换结果字典,耗时秒数)
tuple[Dict[str, str], float): (转换结果字典,耗时秒数)
Raises:
ConversionError: 转换过程出错
Expand Down Expand Up @@ -333,14 +332,14 @@ def convert(
except Exception as e:
raise ConversionError(f"转换失败:{str(e)}") from e

def segment_str(self, text: str) -> List[str]:
def segment_str(self, text: str) -> list[str]:
"""根据设置分词或者直接拆分字符串。
Args:
text (str): 需要分割的字符串
Returns:
List[str): 分割后的字符串列表
list[str): 分割后的字符串列表
"""
return jieba.lcut(text) if self.auto_cut else text.split()

Expand Down Expand Up @@ -584,7 +583,7 @@ def to_cyrillic(self, text: str) -> str:
str: 转换结果
"""
seg_list = self.segment_str(text)
output_list: List[str] = []
output_list: list[str] = []

for seg in seg_list:
pinyin_list = lazy_pinyin(seg)
Expand Down
1 change: 0 additions & 1 deletion fix_data.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# -*- encoding: utf-8 -*-
"""数据修复脚本"""

from base import load_json, save_to_json
Expand Down
11 changes: 5 additions & 6 deletions pack.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
# -*- encoding: utf-8 -*-
"""Minecraft难视语言资源包生成器"""

import time
import zipfile as zf
from typing import Final, Dict, Tuple, List
from typing import Final

from base import P, DATA, fixed_zh, file_size, save_to_json
from base import DATA, P, file_size, fixed_zh, save_to_json
from converter import ChineseConverter, EnglishConverter

# 语言文件配置
LANG_CONVERSIONS: Final[List[Tuple[str, str, Dict]]] = [
LANG_CONVERSIONS: Final[list[tuple[str, str, dict]]] = [
# (转换方法, 输出文件名, 修正字典)
("to_i7h", "en_i7h", None),
("to_katakana", "ja_kk", None),
Expand Down Expand Up @@ -51,11 +50,11 @@ def generate_language_files() -> float:
return time.time() - start_time


def create_resource_pack() -> Tuple[str, float]:
def create_resource_pack() -> tuple[str, float]:
"""将生成的语言文件和必要的资源打包为Minecraft资源包。
Returns:
Tuple[str, float]: (资源包大小,打包耗时)
tuple[str, float]: (资源包大小,打包耗时)
"""
start_time = time.time()
pack_path = P / "unreadable_language_pack.zip"
Expand Down
6 changes: 6 additions & 0 deletions ruff.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[lint]
select = ["F", "E", "W", "UP", "I", "N", "PERF"]

[lint.per-file-ignores]
"__init__.py" = ["E402"]
"**/{tests,docs,tools}/*" = ["E402"]

0 comments on commit 112d709

Please sign in to comment.