# Diagonal Alphabet

a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z


Nonvisually, your task is to generate each letter in the alphabet, with spaces before it equal to its position in the alphabet minus one.

If you print this, it must appear like the above. Extraneous whitespace that does not affect appearance, as well as a trailing newline, is allowed. You can use all lowercase, or all uppercase.

You may also return this from a function as per usual rules, either as a string with newlines, or a list of strings.

This is , so shortest answer in bytes wins!

• Do the spaces need to be real ASCII spaces, or can I give output like a<VERTICAL-TAB>b<VERTICAL-TAB>c...? How about if there are some backspace characters in there too? As long as the visual result is the same? – Digital Trauma Jun 8 '17 at 23:30
• @DigitalTrauma as long as it appears the same, I don't care what kind of whitespace you use. – Stephen Jun 8 '17 at 23:31
• Can I use tabs instead of spaces? – user69335 Jun 9 '17 at 23:28
• @yamboy1 hmm, probably not. Most tabs are set to a large number of spaces - if your diagonal looks like it has 4 spaces before the b, it won't look very diagonal. If it looks like the slope is ~-1 then it's fine. – Stephen Jun 9 '17 at 23:32
• does not affecting appearance include having an extra leading space or 2? – MildlyMilquetoast Sep 11 '17 at 17:08

# Pushy, 10 bytes

a\0x1A;:"32}h


Where \0x1A is the character 26, 'SUB'

Try it online!

# Attache, 21 bytes

Output[sp*0:25+$a:$z]


Try it online!

## Explanation

Output[sp*0:25+$a:$z]
Output[             ]     write each entry as a line to stdout:
sp*0:25                spaces repeated 0 to 25 times (array)
+$a:$z          each followed by a letter from "a" to "z"


## Alternatives

22 bytes: Output[" "*0:25+$a:$z]

23 bytes: Print=>(" "*0:25+$a:$z)

24 bytes: Print@{_*sp+NTS@_}=>0:25

31 bytes: Print@&PadLeft=>Zip[$a:$z,1:26]

35 bytes: {Print@_If[$z!in_,$[sp+Succ@_]]}@$a 37 bytes: {Print@_If[_@-1/=$z,$[sp+Succ@_]]}@$a

37 bytes: Print@&PadLeft=>Zip[Chars@alpha,1:26]

40 bytes: Output!ZipWith[PadLeft,Chars@alpha,1:26]

40 bytes: Print=>ZipWith[PadLeft,Chars@alpha,1:26]