zephyr/kernel
Lingao Meng 302422ad9d everywhere: replace double words
import os
import re

common_words = set([
    'about', 'after', 'all', 'also', 'an', 'and',
     'any', 'are', 'as', 'at',
    'be', 'because', 'but', 'by', 'can', 'come',
    'could', 'day', 'do', 'even',
    'first', 'for', 'get', 'give', 'go', 'has',
    'have', 'he', 'her',
    'him', 'his', 'how', 'I', 'in', 'into', 'it',
    'its', 'just',
    'know', 'like', 'look', 'make', 'man', 'many',
    'me', 'more', 'my', 'new',
    'no', 'not', 'now', 'of', 'one', 'only', 'or',
    'other', 'our', 'out',
    'over', 'people', 'say', 'see', 'she', 'so',
    'some', 'take', 'tell', 'than',
    'their', 'them', 'then', 'there', 'these',
    'they', 'think',
    'this', 'time', 'two', 'up', 'use', 'very',
    'want', 'was', 'way',
    'we', 'well', 'what', 'when', 'which', 'who',
    'will', 'with', 'would',
    'year', 'you', 'your'
])

valid_extensions = set([
    'c', 'h', 'yaml', 'cmake', 'conf', 'txt', 'overlay',
    'rst', 'dtsi',
    'Kconfig', 'dts', 'defconfig', 'yml', 'ld', 'sh', 'py',
    'soc', 'cfg'
])

def filter_repeated_words(text):
    # Split the text into lines
    lines = text.split('\n')

    # Combine lines into a single string with unique separator
    combined_text = '/*sep*/'.join(lines)

    # Replace repeated words within a line
    def replace_within_line(match):
        return match.group(1)

    # Regex for matching repeated words within a line
    within_line_pattern =
	re.compile(r'\b(' +
		'|'.join(map(re.escape, common_words)) +
		r')\b\s+\b\1\b')
    combined_text = within_line_pattern.
		sub(replace_within_line, combined_text)

    # Replace repeated words across line boundaries
    def replace_across_lines(match):
        return match.group(1) + match.group(2)

    # Regex for matching repeated words across line boundaries
    across_lines_pattern = re.
		compile(r'\b(' + '|'.join(
			map(re.escape, common_words)) +
			r')\b(\s*[*\/\n\s]*)\b\1\b')
    combined_text = across_lines_pattern.
		sub(replace_across_lines, combined_text)

    # Split the text back into lines
    filtered_text = combined_text.split('/*sep*/')

    return '\n'.join(filtered_text)

def process_file(file_path):
    with open(file_path, 'r', encoding='utf-8') as file:
        text = file.read()

    new_text = filter_repeated_words(text)

    with open(file_path, 'w', encoding='utf-8') as file:
        file.write(new_text)

def process_directory(directory_path):
    for root, dirs, files in os.walk(directory_path):
        dirs[:] = [d for d in dirs if not d.startswith('.')]
        for file in files:
            # Filter out hidden files
            if file.startswith('.'):
                continue
            file_extension = file.split('.')[-1]
            if
	file_extension in valid_extensions:  # 只处理指定后缀的文件
                file_path = os.path.join(root, file)
                print(f"Processed file: {file_path}")
                process_file(file_path)

directory_to_process = "/home/mi/works/github/zephyrproject/zephyr"
process_directory(directory_to_process)

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2024-06-25 06:05:35 -04:00
..
include kernel: avoided increments/decrements with side effects 2024-06-14 19:19:29 +02:00
paging kernel: mm: rename z_num_pagefaults_get to k_mem_num_* 2024-06-12 21:13:26 -04:00
atomic_c.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
banner.c kernel: banner: Add option to clear screen on boot 2024-06-13 20:30:14 -04:00
busy_wait.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
CMakeLists.txt kernel: move nothread support to own file 2024-04-06 14:22:08 +03:00
compiler_stack_protect.c kernel: Unified type of stack protection canary __stack_chk_guard. 2024-06-14 19:26:27 +02:00
condvar.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
cpu_mask.c kernel: add closing comments to config endifs 2024-03-25 18:03:31 -04:00
device.c kernel: add CONFIG_DEVICE_DT_METADATA and helpers 2024-06-12 18:49:54 +02:00
dynamic.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
dynamic_disabled.c
errno.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
events.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
fatal.c arch: define struct arch_esf and deprecate z_arch_esf_t 2024-06-04 14:02:51 -05:00
float.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
futex.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
idle.c pm: Move z_pm_save_idle_exit to pm subsys 2024-05-27 02:10:03 -07:00
init.c tracing: trace sys_init calls 2024-06-18 14:39:05 -04:00
ipi.c kernel: Add CONFIG_ARCH_HAS_DIRECTED_IPIS 2024-06-04 22:35:54 -04:00
irq_offload.c kernel: add closing comments to config endifs 2024-03-25 18:03:31 -04:00
Kconfig everywhere: replace double words 2024-06-25 06:05:35 -04:00
Kconfig.device kernel: add CONFIG_DEVICE_DT_METADATA and helpers 2024-06-12 18:49:54 +02:00
Kconfig.mem_domain kernel: mem_domain: new config for isolated stacks 2024-05-21 20:53:09 -04:00
Kconfig.obj_core kernel: reorg Kconfigs and split them 2024-03-06 19:27:28 -05:00
Kconfig.smp kernel: Add CONFIG_SCHED_IPI_CASCADE 2024-06-21 20:49:11 -04:00
Kconfig.vm kernel: mm: rename Z_MEM_PHYS/VIRT_ADDR to K_MEM_* 2024-06-12 21:13:26 -04:00
kheap.c tracing: add k_realloc trace 2024-05-28 17:55:12 +02:00
mailbox.c kernel: Clean up mailbox async msg configuration 2024-04-09 11:05:55 +02:00
main_weak.c
mem_domain.c coding guidelines: comply with MISRA Rule 12.1. 2024-05-12 13:37:27 -04:00
mem_slab.c kernel: mem_slab: only define slab_ptr_is_good with assert enabled 2024-06-10 17:46:10 +01:00
mempool.c kernel: avoided increments/decrements with side effects 2024-06-14 19:19:29 +02:00
mmu.c demand_paging: add frame tracking functions to eviction algorithms 2024-06-14 18:58:02 -04:00
msg_q.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
mutex.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
nothread.c kernel: move nothread support to own file 2024-04-06 14:22:08 +03:00
obj_core.c kernel: add closing comments to config endifs 2024-03-25 18:03:31 -04:00
pipes.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
poll.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
priority_queues.c kernel: priority queues: declare as static inlines 2024-04-22 16:40:11 -04:00
queue.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
sched.c kernel: Add CONFIG_SCHED_IPI_CASCADE 2024-06-21 20:49:11 -04:00
sem.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
smp.c kernel: Relax loop in z_smp_global_lock() 2024-05-22 21:35:06 -04:00
spinlock_validate.c kernel/spinlock: Fix SPIN_VALIDATE in ISRs 2024-05-02 13:55:03 -04:00
stack.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
system_work_q.c kernel: system_work_q: Mark queue thread as essential 2024-04-25 21:40:24 +02:00
thread.c kernel: mm: remove k_mem_phys_un/map() 2024-06-12 21:13:26 -04:00
thread_monitor.c kernel: split thread monitor 2024-03-06 19:27:28 -05:00
timeout.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
timer.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
timeslicing.c kernel: Add CONFIG_IPI_OPTIMIZE 2024-06-04 22:35:54 -04:00
usage.c kernel: Remove duplicate execution_cycles write and improve docstring 2024-04-28 13:04:20 -04:00
userspace.c everywhere: replace double words 2024-06-25 06:05:35 -04:00
userspace_handler.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
version.c build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
work.c coding guidelines: comply with MISRA Rule 2.2 2024-05-02 09:32:46 +01:00
xip.c