Привет! Я пытаюсь создать превосходный фрагмент текста и хочу преобразовать слово camelCase в snake_case.Я знаю, что есть плагины, которые позволяют вам конвертировать строку в snake_case, но я хочу сделать это с помощью фрагментов возвышенного текста.
У меня есть фрагмент, как показано ниже.
<snippet>
<content><![CDATA[
/**
* ${TM_FILEPATH/^.+\/(\w+)\.php$/${1}/} belongs to many (many-to-many) ${1/^((.+)ies)|(.+[^s])s$/\u(?1$2y:$3)/}.
*
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
public function $1()
{
return \$this->belongsToMany('App\\${1/^((.+)ies)|(.+[^s])s$/\u(?1$2y:$3)/}', '${TM_FILEPATH/^.+\/(\w+)\.php$/\l${1}/}_$1', '${TM_FILEPATH/^.+\/(\w+)\.php$/\l${1}/}_id', '${1/^((.+)ies)|(.+[^s])s$/\l(?1$2y:$3)/}_id');
}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>btm</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>source.php</scope>
<description>Eloquent belongsToMany() (pivot) relation</description>
</snippet>
И каквывод, который он мне дает.
/**
* UserMessages belongs to many (many-to-many) Role.
*
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
public function roles()
{
return $this->belongsToMany('App\Role', 'userMessages_roles', 'userMessages_id', 'role_id');
}
В итоге я хочу, чтобы userMessages был user_messages.Любая идея, как это сделать.
Большое спасибо.