add gitmoji support for commit messages (#165)

Add gitmoji toggle in Git settings to enable emoji support
Show Add gitmoji button in commit section when feature is enabled
Display gitmoji picker dialog with searchable emoji list
This commit is contained in:
Taylor Beeston
2026-01-17 11:09:21 +02:00
committed by GitHub
parent 71857eab99
commit b02712bee1
9 changed files with 335 additions and 136 deletions
@@ -1,9 +1,9 @@
import React from 'react';
import {
RiGitCommitLine,
RiArrowUpLine,
RiAiGenerate2,
RiLoader4Line,
RiEmotionHappyLine,
} from '@remixicon/react';
import {
Collapsible,
@@ -30,6 +30,8 @@ interface CommitSectionProps {
onCommitAndPush: () => void;
commitAction: CommitAction;
isBusy: boolean;
gitmojiEnabled: boolean;
onOpenGitmojiPicker: () => void;
}
export const CommitSection: React.FC<CommitSectionProps> = ({
@@ -45,6 +47,8 @@ export const CommitSection: React.FC<CommitSectionProps> = ({
onCommitAndPush,
commitAction,
isBusy,
gitmojiEnabled,
onOpenGitmojiPicker,
}) => {
const hasSelectedFiles = selectedCount > 0;
const canCommit = commitMessage.trim() && hasSelectedFiles && commitAction === null;
@@ -79,6 +83,19 @@ export const CommitSection: React.FC<CommitSectionProps> = ({
disabled={commitAction !== null}
/>
{gitmojiEnabled && (
<Button
variant="outline"
size="sm"
onClick={onOpenGitmojiPicker}
className="w-fit"
type="button"
>
<RiEmotionHappyLine className="size-4" />
Add gitmoji
</Button>
)}
<div className="flex items-center gap-2">
<Tooltip delayDuration={1000}>
<TooltipTrigger asChild>